2
我試圖從網站上刮取一些數據,但無法使POST正常工作,它的行爲好像我沒有給它輸入數據( 「應用筆記」)。POST URL通過Python請求編碼與基於行的文本數據
當我檢查POST數據時,除了實際的webform的POST被稱爲「URL Encoded」並列出每個表單輸入,而我的標記爲「基於行的文本數據」外,它看起來相同。
這裏是我的代碼:(應用筆記)和搜索(搜索)是最相關的作品,我需要
import requests
import cookielib
jar = cookielib.CookieJar()
url = 'http://www.vivotek.com/faq/'
headers = {'content-type': 'application/x-www-form-urlencoded'}
post_data = {#'__EVENTTARGET':'',
#'__EVENTARGUMENT':'',
'__LASTFOCUS':'',
'__VIEWSTATE':'',
'__VIEWSTATEGENERATOR':'',
'__VIEWSTATEENCRYPTED':'',
'__PREVIOUSPAGE':'',
'__EVENTVALIDATION':''
'ctl00$HeaderUc1$LanguageDDLUc1$ddlLanguage':'en',
'ctl00$ContentPlaceHolder1$CategoryDDLUc1$DropDownList1':'-1',
'ctl00$ContentPlaceHolder1$ProductDDLUc1$DropDownList1':'-1',
'ctl00$ContentPlaceHolder1$Content':'appnote',
'ctl00$ContentPlaceHolder1$Search':'Search'
}
response = requests.get(url, cookies=jar)
response = requests.post(url, cookies=jar, data=post_data, headers=headers)
print(response.text)
鏈接到什麼,我在Wireshark的談論圖片:
我也嘗試過使用wget獲得相同的結果。
也表現的很出色,謝謝!所以,我猜想我缺少的主要是會話數據。這就說得通了! – Ganeshvara 2014-10-01 14:06:38