使用urllib2和cookielib在两个开启者之间共享cookie

时间:2012-06-21 03:17:25

标签: python cookies proxy urllib2

我正在创建一个脚本,要求我使用代理并需要使用cookie。

该脚本将访问HTTP和HTTPS页面,这意味着我需要两个URL开启器。

但是,我希望两个开启者的cookie彼此共享,我该如何实现?

1 个答案:

答案 0 :(得分:2)

你真的需要2个开场白吗?制作一个并包含http和https以及1个cookie jar的处理程序和代理。我在使用1开启器时可以满足我的所有需求。

cj = cookielib.CookieJar()
opener = build_opener(
             HTTPHandler(), HTTPSHandler(), HTTPCookieProcessor(cj), 
             ProxyHandler({'http': 'http://user:passwd@proxy.example.com:80'}),
             ProxyHandler({'https': 'http://user:passwd@proxy.example.com:80'}))

对于2个开场白,制作1个饼干罐并在它们之间共享。

cj = cookielib.CookieJar()
HTTPOpener = build_opener(
             HTTPHandler(), HTTPCookieProcessor(cj), 
             ProxyHandler({'http': 'http://user:passwd@proxy.example.com:80'}))
HTTPSOpener = build_opener(
             HTTPSHandler(), HTTPCookieProcessor(cj), 
             ProxyHandler({'https': 'http://user:passrd@proxy.example.com:80'}))