我的程序顶部有一个代码,如下所示:
cj=cookielib.CookieJar()
#Process Hadlers
opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
#install opener, now all the calls to urllib2.urlopen use this opener
urllib2.install_opener(opener)
opener.addheaders=[
('User-Agent', 'Mozilla/5.0 (BlackBerry; U; BlackBerry 9850; en-US) AppleWebKit/534.11+ (KHTML, like Gecko) Version/7.0.0.115 Mobile Safari/534.11+'),
# ('Accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'),
('Accept-Language', 'en-gb,en;q=0.5'),
('Accept-Encoding', 'gzip,deflate'),
('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.7'),
('Keep-Alive', '115'),
('Connection', 'keep-alive'),
('Cache-Control', 'max-age=0'),
('Referer', 'http://yahoo.com'),
]
所以现在我想将此代码移动到另一个类,因为我不想在我的程序中复制和粘贴代码。据我了解urllib2.install_opener(opener)
,将所有标题、cookie 等添加到urllib2
当我调用urlopen()
. 想把它移到某个类,但不知道这段代码应该返回什么。另外,如果我将它移到__init__
方法中,它将不起作用,因为init不会返回任何内容。