3
headers = {
    'Accept': 'application/json, text/javascript, */*; q=0.01',
    'X-Requested-With': 'XMLHttpRequest',
    'Referer': 'http://www.namestation.com/domain-search?autosearch=1',
    'Origin': 'http://www.namestation.com',
    'Host': 'www.namestation.com',
    'Content-Type': 'application/json; charset=UTF-8',
    'Connection': 'keep-alive'
}
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))

opener.addHeaders(标题)?

4

3 回答 3

6

你的开瓶器应该有一个属性addheaders,它是一个元组列表。默认情况下,它包含用户代理。

opener.addheaders.append(('Host', 'www.namestation.com'))
于 2013-03-16T22:46:36.877 回答
3

像这样的东西可能会起作用:

def opener():
    cj=cookielib.CookieJar()
    #Process Hadlers
    opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
    opener.addheaders=[
                    ('Accept', 'application/json, text/javascript, */*; q=0.01'),
                    ('X-Requested-With', 'XMLHttpRequest'),
                    ('Referer', 'http://www.namestation.com/domain-search?autosearch=1'),
                    ('Host', 'www.namestation.com'),
                    ('Content-Type', 'application/json; charset=UTF-8'),
                    ('Connection', 'keep-alive'),
                ]
    return opener
于 2013-03-16T22:47:23.397 回答
1

您应该首先将 dict 转换为元组。

opener.addHeaders=tuple(items for items in headers.items())

于 2021-04-07T13:44:04.697 回答