0
我正在開發一些網站客戶端寫的餅乾,閱讀某網站
當我使用Chrome/Firefox訪問網站,寫入一些餅乾在我的本地端,除了曲奇場HTTP響應,
我需要提取從我的本地文件,這些額外的信息發送可以由遠程服務器接受成功
誰能告訴我該怎麼做在Python的請求?
最好,
我正在開發一些網站客戶端寫的餅乾,閱讀某網站
當我使用Chrome/Firefox訪問網站,寫入一些餅乾在我的本地端,除了曲奇場HTTP響應,
我需要提取從我的本地文件,這些額外的信息發送可以由遠程服務器接受成功
誰能告訴我該怎麼做在Python的請求?
最好,
您有很多選擇。最好的一個似乎是使用urllib2。看看How to use Python to login to a webpage and retrieve cookies for later usage?有一些很好的答案。
下面是頂部答案的代碼。這是登錄,設置一些餅乾,訪問受限制的網頁:
import urllib, urllib2, cookielib
username = 'myuser'
password = 'mypassword'
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
login_data = urllib.urlencode({'username' : username, 'j_password' : password})
opener.open('http://www.example.com/login.php', login_data)
resp = opener.open('http://www.example.com/hiddenpage.php')
print resp.read()
恩,似乎這種方法不適用於我的情況下工作,我進入了「大衆頁」獲取Cookie的信息後,我打印出cj中的信息,它只包含用HTTPResponse返回的信息,不過,我用FireFug中的FireBug插件檢查過,顯然有一些缺失的值,這就是我的請求被阻止的原因。 – CodingCat
您能分享cj的內容和缺失的值是什麼?看起來像「公共頁面」可能會首先將您重定向到一箇中間頁面,以便像往常一樣設置cookie。在這種情況下,您必須以編程方式訪問該中間頁面。 – amrav
cj爲www.foo.com顯示,缺少的值是s_vnum s_vi –
CodingCat