作者benson415 (沛行)
看板Python
标题Re: [问题] 使用requests post爬虫问题
时间Thu Sep 1 13:20:33 2016
问题应该是来自你如何取得
"__VIEWSTATE", "__VIEWSTATEGENERATOR", "__EVENTVALIDATION"
这三个变数的方法了
「每次」在parse你真正要的资料之前
请带着你的header就好,先将这三个变数parse出来存入Dict或List
举例:
valid = {
"viewstate": __VIEWSTATE
"viewstategenerator": __VIEWSTATEGENERATOR,
"eventvalidation": __EVENTVALIDATION
}
然後再将这三个值丢进你的formdata_market
: formdata_market = {"__VIEWSTATE":valid['viewstate'],
: "__VIEWSTATEGENERATOR": valid['viewstategenerator'],
: "__EVENTVALIDATION": valid['eventvalidation'],
: "ctl00$ContentPlaceHolder1$D1":market[0],
: "ctl00$ContentPlaceHolder1$D3":"2016-08-29"}
这样应该就没问题了,这是处理aspx常见问题
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.35.183.56
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1472707236.A.EFC.html
※ 编辑: benson415 (114.35.183.56), 09/01/2016 13:34:12
1F:推 liwenhuang: 感谢benson大, 问题解决了! 09/01 15:36
2F:→ liwenhuang: 原来每次要资料前都要先拿到OTC的viewstate後才能选 09/01 15:37
3F:→ liwenhuang: 日期! 09/01 15:37
4F:→ benson415: 但其实「每次」的意思是当你开启这个py档要去要资料之 09/01 17:18
5F:→ benson415: 前,不用到每个日期都要先要一次viewstate,一次就好! 09/01 17:19
6F:→ liwenhuang: 我原本也是在第一次执行py的时候要了一次viewstate, 09/01 19:17
7F:→ liwenhuang: 但似乎没办法解决, 所以我才每一次都去要@@ 09/01 19:17