Re: [問題] requests aspx 爬蟲

作者: zerof (貓橘毛發呆雕像)   2017-05-22 18:28:01
前文 43
: ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.214.82.45
: ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1495432336.A.7BF.html
: → coeric: 加過sess 好像也沒用? 05/22 14:03
: ※ 編輯: coeric (49.214.82.45), 05/22/2017 14:10:00
: → leo850611: get那次要和post使用同個session 05/22 14:14
: http://codepad.org/WLXoNk55
: 似乎還是不行.........
: ※ 編輯: coeric (49.214.82.45), 05/22/2017 14:19:18
: → zerof: 要照順序 post 05/22 15:21
: → zerof: 應該說要照 "手動選" 的順序 post, 後端會檢查 viewstate 05/22 15:22
: → coeric: 挖塞.....感謝樓上上了一課...還有這樣的.... 05/22 16:11
: → coeric: 中間還有藏了一post..... 05/22 16:12
: 推 HenryLiKing: 不好意思我還是不太懂什麼叫做手動選的順序耶 05/22 17:08
本來想說解釋一下 viewstate 但這裡是 Python 板... 有興趣的話再自行研究吧QQ
簡單來說 post 到 server 的 __VIEWSTATE 的值會在每次 post 的時候被檢查,
檢查的方式跟內容依各 ASP.NET 網站的實作有所不同。
so, 「手動選的順序」指的是你實際上每一次動 dropdown list 的時候都會連動
post 操作的值回 server ,造成 __VIEWSTATE 變動,而 server side 剛好有檢
查你 post 到 server 的 state 是不是符合人工操作的狀態這樣。
(例如要先選第一個 list 才能選第二個 list)
不過 server 沒有 catch 這個 exception 就是了,不然不應該噴 500 error..
作者: coeric ( )   2017-05-22 20:13:00
推推推~~~
作者: s860134 (s860134)   2017-05-22 23:13:00
其實現在很多 webgame 都是這樣的原理有的是帶在 cookie ,有的是夾在 data,每次 post 都刷新每次的 post 必須包含上一次的 respon 的 key
作者: HenryLiKing (HenryLiKing)   2017-05-23 08:16:00
不過還是希望原po大大介紹一點viewstate啊~<(_ _)>

Links booklink

Contact Us: admin [ a t ] ucptt.com