Подтвердить что ты не робот

Как добавить заголовок в urllib2?

cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))    
opener.open('http://abc.com')
opener.open('http://google.com')

Как вы можете видеть, я использую открыватель для посещения разных веб-сайтов, используя банку cookie. Могу ли я настроить заголовок так, чтобы каждый раз, когда веб-сайт это, заголовок применяется?

4b9b3361

Ответ 1

Вы можете добавить заголовки непосредственно в объект OpenerDirector, возвращенный build_opener. В последнем примере в urllib2 docs:

OpenerDirector автоматически добавляет заголовок User-Agent для каждого запроса. Чтобы изменить это:

import urllib2
opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
opener.open('http://www.example.com/')

Также помните, что при отправке запроса на urlopen() (или OpenerDirector.open()) добавляются несколько стандартных заголовков (Content-Length, Content-Type и Host).

Ответ 2

headers = {'foo': 'bar',}
req = urllib2.Request(url, None, headers)
resp = urllib2.urlopen(req)

или

req = urllib2.Request(url)
req.add_header('foo', 'bar')
resp = urllib2.urlopen(req)