2011-02-24 35 views
0

我是一位嘗試使用python訪問google洞察的新手程序員。我可以訪問不需要cookies的網站,但我似乎無法正確通過Cookie。 cookines文件是從Mozilla Firefox中導出的,位於Z:驅動器中,它也是我運行python的地方。在python中加載cookie

林也很確定我的代碼保存文件可以比讀寫更好,但我不知道如何做到這一點。任何helpo將不勝感激。

import urllib2 
import cookielib 
import os 

url = "http://www.google.com/insights/search/overviewReport?q=eagles%2Ccsco&geo=US&cmpt=q&content=1&export=2" 
cj = cookielib.MozillaCookieJar() 
cj.load('cookies6.txt') 
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) 
file = opener.open(url) 
output = open('test2.csv','wb') 
output.write(file.read()) 
output.close() 
+0

看看[mechanize](http://wwwsearch.sourceforge.net/mechanize/),它確實處理餅乾(IIRC)。 – lazy1 2011-02-24 19:54:19

回答

1

我沒有測試但你的代碼:

至於我可以告訴人們似乎沒有錯,你的代碼

我試過您要搜索的網址和沒有問題下載csv 沒有任何cookies

在我以前的經驗與谷歌,你可能是在錯誤的方式看問題,這不是你沒有正確的cookies,但谷歌自動盟友阻止機器人的請求。 如果是這種情況您必須替換用戶代理http頭以模仿實際的瀏覽器。然而,請注意,如果您每分鐘提出太多請求,谷歌將阻止您的ip的所有請求大約8小時,這違反了谷歌的服務條款