какой программой залить файл по http (через метод put)?

Dasar

какой программой можно заливать файлы по http (через метод put)?
интересует в первую очередь win, но линукс тоже интересно

AlexV769

интересует в первую очередь web, но линукс тоже интересно
поясни

Dasar

извини, опечатался
вместо web, следует читать win

conv3rsje

Петоновский скрипт использующий urllib2

import urllib2
# From dput
# Handle valid WebDAV success return values.
class DavErrorProcessor(urllib2.HTTPErrorProcessor):
def http_response(self, request, response):
code, msg, hdrs = response.code, response.msg, response.info
if code not in range(200, 208):
response = self.parent.error('http', request, response, code, msg, hdrs)
return response
https_response = http_response

# Workaround to support PUT requests in urllib2.
class HttpDavRequest(urllib2.Request):
def get_method(self):
# This is very ugly.
if self.has_data:
return "PUT"
else:
return "GET"
# вызов
opener = urllib2.build_opener(DavErrorProcessor
request = HttpDavRequest(uri, '''текзд''')
response = opener.open(request)

Под вендой должно работать
Еще в линухе есть прога nd

Dasar

а докачка?

conv3rsje

хз
nd вроде не умеет
скрипт, наверное, можно обучить
но это сложно, так как тебе надо сначала узнать сколько докачивать
узнать не всегда возможно, например, если то что ты уплоадишь не показывается вообще или показывается в каком-то левом месте
если прога сама запоминает, на каком месте остановилась - то это еще хуже, тк битый файл в итоге получится
upd
похоже вооще нельзя

Dasar

похоже вооще нельзя
а здесь даже это тестируют
http://curl.haxx.se/mail/lib-2001-01/0049.html

conv3rsje

а здесь даже это тестируют
дык технически это мона :) но вот непонятно, кто поддерживает PUT + Range, а кто нет...
плюс проблема с перемещением залитых файлов
как узнать, с какого момента продолжать?

Dasar

> как узнать, с какого момента продолжать?
можно через get, можно через webdav

vall

попробуй lftp погрипал сырцы вроде умеет, проверять не на чем.
Оставить комментарий
Имя или ник:
Комментарий: