Найти - Пользователи
Полная версия: urllib.request.build_opener() как задоть более 5ти заголовков
Начало » Web » urllib.request.build_opener() как задоть более 5ти заголовков
1
VeNOm
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
opener.addheaders = ....
нужно передать 11 заголовков. После передачи 6ти

[('User-agent','Opera/9.80'),('Accept-Language',' ru-RU,ru;q=0.9,en;q=0.8'),('Accept-Charset',' iso-8859-1, utf-8, utf-16, *;q=0.1'),('Accept-Encoding',' deflate, gzip, x-gzip, identity, *;q=0'),('Cookie2',' $Version=1'),('Connection',' Keep-Alive, TE'),]
питон пишет
File “C:\Python31\lib\urllib\request.py”, line 1029, in do_request_
for name, value in self.parent.addheaders:
ValueError: too many values to unpack
python 3.1
r1der
ошибка возникает тут
class AbstractHTTPHandler(BaseHandler):

...

def do_request_(self, request):
...
for name, value in [b]self.parent.addheaders[/b]:
print(self.parent)
name = name.capitalize()
if not request.has_header(name):
request.add_unredirected_header(name, value)

return request
этот объект не может распаковаться в 2 значения(ключ и значение, сорри за тафтологию) скорее всего ты пытался всунуть в addheaders кортеж из трех или более элементов
выложи весь код всех сетевых операций до ошибки.
VeNOm
import sys,os,re,urllib,http.cookiejar

mail = ''
pas = ''
data = "handle="+mail+"&password="+pas
cj = http.cookiejar.CookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
x=[('Accept-Encoding',' deflate, gzip, x-gzip, identity, *;q=0'),('Connection',' Keep-Alive, TE'),('TE',' deflate, gzip, chunked, identity, trailers'),('Accept-Language',' ru-RU,ru;q=0.9,en;q=0.8'),('Accept-Encoding',' deflate, gzip, x-gzip, identity, *;q=0')]
opener.addheaders(x)
r1der
у меня подобный код выполнился без проблем.. дело в другом. скачай заново питон, а точнее отдельно моули urllib.. и попробуй снова, все должно нормально работать поидеелибо выложи полный код программы чтобы можно было понять в чем дело..
VeNOm
import sys,os,re,urllib,http.cookiejar


mail = 'N***********.ru'
pas = '********'
data = "handle="+mail+"&password="+pas
cj = http.cookiejar.CookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
x=[('Accept-Encoding',' deflate, gzip, x-gzip, identity, *;q=0'),('Connection',' Keep-Alive, TE'),('TE',' deflate, gzip, chunked, identity, trailers')]
opener.addheaders(x)

data = ''
r = opener.open('http://www.lockerz.com/user/get_daily_ptz',data)


#print (r.read().decode())
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