|
|
|
|
 如何打开使用cookie信息的网页 - dorothywu [ 2005-11-29 10:11 | 444 byte(s)]
 Re: 如何打开使用cookie信息的网页 - passworld [ 2005-11-29 14:43 | 532 byte(s)]
 Re: 如何打开使用cookie信息的网页 - dorothywu [ 2005-12-01 10:15 | 316 byte(s)]
 Re: 如何打开使用cookie信息的网页 - limodou [ 2005-12-01 11:56 | 26 byte(s)]
|
|
|
|
[Original]
[Print]
[Top]
|
比如一个网页,缺省是英文的页面。
我通过网页上的链接,设置成中文的页面,中文等相关信息是保存在cookie中的。
如果以后用浏览器再去看的话,就一直会是中文的了。
但如果我用python语句去抓取网页时,
opener = urllib.URLopener()
opener.retrieve( htmlUrl, "temp.html" )
发现抓到的总还是英文的页面,
有什么办法可以让它读到cookie的设置,这样我下载下来的就可以是中文的页面了?
|
|
|
[Original]
[Print]
[Top]
|
|
[Original]
[Print]
[Top]
|
python 2.4 urllib2 里有 HTTPCookieProcessor handler,当然还要用到 cookielib 这个模块。
import cookielib, urllib2
cookiejar = cookielib.MozillaCookieJar()
cookiejar.load(os.path.join(cmdpath, 'cookies.txt'))
httpcookie = urllib2.HTTPCookieProcessor(cookiejar)
opener = urllib2.build_opener(httpcookie)
fobj = opener.open(.........................)
这个 cookies.txt 直接把 mozilla 的复制过来就可以,当然也可以自己存一个。
|
|
|
----
|
|
[Original]
[Print]
[Top]
|
|
[Original]
[Print]
[Top]
|
謝謝passworld的指导。
我现在已经能够抓到中文网页了。
而且幸运的是这个cookie用到2015年才会过期。
所以我把mozilla的cookies.txt拷贝过去就可以用了。
但我在想,最好还是通过程序把cookie抓下来比较好。
cookielib模块应该有这样的功能吧?
等下再试试看。
|
|
|
[Original]
[Print]
[Top]
|
|
|