Найти - Пользователи
Полная версия: Как аплоадить файл по http
Начало » Python для новичков » Как аплоадить файл по http
1
kontio
Питон 3.0 Нужно зааплоадить файл на сервер как через html-форму
Пытаюсь делать через http.client так

adddata=urllib.parse.urlencode({'jkd498':1,'jkd428':1,'wtmr':1,'f':'fm',
‘a’:'','l':1,'n':1,'ssid':ssid})
f=open(img)
cookstr=“”
for cook in list_cookies:
cookstr+=cook+“; ”

conn = http.client.HTTPConnection('sextest.ucoz.ru')

headers = {“Content-type”: “multipart/form-data”,
“Accept”: “text/plain”, “Cookie”:cookstr}
conn.request(“POST”, “/tmpls/”,f, headers)
response = conn.getresponse()
print(response.status, response.reason)
data = response.read()
conn.close()
f.close()
Psixo
Я использую pyCurl,примерно так:
	request = [
('thefile0',(pycurl.FORM_FILE, img_file)),
('submit', 'Upload')
]

UA.setopt(pycurl.URL, 'http://domen.ru/inc/uploader.php')
UA.setopt(pycurl.HTTPPOST, request)
UA.setopt(pycurl.VERBOSE, 0)
kontio
а без pyCurl? стандартными средствами?
Psixo
Фиг его знает :) почти не использую стандартные либы,привык к Curl-у, он есть в PHP и С,вот я и привык,о чем не жалею. Попробуйте использовать его, будет гораздо быстрее нежели копаться в стандартных либах.
Андрей Светлов
:(
Использовать urlopen, видимо, религия не позволяет :)

urllib.urlopen('http://domen.ru/inc/uploader.php', urllib.parse.urlencode('blahblahblah'))
kontio
Psixo
спасибо, попробую

Андрей Светлов
не могли бы Вы подробнее описать процесс аплоада файла через urllib.request я именно его и пытался использовать примерно так:

f=open(img)
adddata=urllib.parse.urlencode({'jkd498':1,'jkd428':1,'wtmr':1,'f':'fm',
‘a’:'','l':1,'n':1,'ssid':ssid,'file':f})

req = urllib.request.Request(host+“/tmpls/”,adddata)
try:
cookstr=“”
for cook in list_cookies:
cookstr+=cook+“; ”

req.add_header('Cookie', cookstr)
r = urllib.request.urlopen(req)
data=r.readlines()
l=str(data)
print(l)
except urllib.request.HTTPError:
print(“error2”)

f.close()
poltergeist
http://python.su/forum/viewtopic.php?id=5274
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB