看板 R_Language 關於我們 聯絡資訊
※ 引述《jack155861 (蕭)》之銘言: : [問題類型]: : : 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) : : [軟體熟悉度]: : : 使用者(已經有用R 做過不少作品) : : [問題敘述]: : : 之前爬蟲都是用html網頁型態,最近遇到一個是需要先點選選單才能查詢資料的ASP網頁, : 如下 : http://fhy.wra.gov.tw/ReservoirPage_2011/StorageCapacity.aspx : 假設我要載:水庫>2017/6/4 像這樣的資料時,他的網址並不會跟著變動 : 要使用怎樣的語法會比較恰當 : 請各位指點一下~"~ : 各位好 謝謝C大的說明 然後我又在網路上看到一個教學 他這個教學跟我網站的形式有點類似 網址如下:http://leoluyi.logdown.com/posts/406397-crawler-mops-2 我把我要爬蟲的網站 看了他的程式碼 他是屬於form data 如下圖 http://imgur.com/a/Vy7mw 依照上面教學網址是要把form data的資料都放到R的函數理頭 res <- POST( "http://fhy.wra.gov.tw/ReservoirPage_2011/StorageCapacity.aspx", body = "XXXXX", encode = "form") 但是怎樣跑都跑不出來 跑的都是最新(2017/6/4)的資料 若我body只放以下這些有影響的參數也是如此 ctl00$cphMain$cboSearch:防汛重點水庫 ctl00$cphMain$ucDate$cboYear:2017 ctl00$cphMain$ucDate$cboMonth:6 ctl00$cphMain$ucDate$cboDay:2 請問各位大大 有哪裡用錯了嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.169.202.207 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1496584622.A.D2C.html
seimwiwa: 注意VIEWSTATE 06/05 21:14
jack155861: 請問s大 要如何處理VIEWSTATE那一長串的資料ㄚ 06/06 00:03
bluecadence: 你要先 get 主頁 http (你文章裡面的http),在主頁的 06/06 00:24
bluecadence: 內容中先撈出 __VIEWSTATE 和 __VIEWSTATEGENERATOR 06/06 00:24
bluecadence: 的值,之後抓不同的日期需要 post 這些參數 06/06 00:25
bluecadence: 另外搞不好需要保留cookies使用cookies (我不確定, 06/06 00:27
bluecadence: 我沒實際去抓你這網頁) 06/06 00:27
jack155861: B大 _viewstate那些我都有放了 還是無法 06/06 10:38
jack155861: 保留cookies使用cookies 這個是啥意思 06/06 10:38
jack155861: 然後http://curso-r.github.io/posts/aula11.html 06/06 10:39
jack155861: 有類似的東西 但她好複雜 我在瞧瞧 06/06 10:39
bluecadence: 也是一樣 造訪主頁後,把 cookies 存起來,之後爬資料 06/06 11:27
bluecadence: 要用這些cookies 試試看吧 06/06 11:27
seimwiwa: 這個只需要以正則表達式先取得viewstate即可 06/06 15:55
jack155861: 謝謝各位 我爬爬爬爬爬 出來了 06/06 17:44
bluecadence: 那個cookies是google analytics在用的 應該是用不上 06/06 17:52
bluecadence: 剛看了一下除了日期,另外兩個必要的參數是 06/06 18:05
bluecadence: __VIEWSTATE 和 __EVENTTARGET 06/06 18:06
seimwiwa: 恭喜你印象中2001年開始才有紀錄,全部爬完應該要花點 06/06 19:16
seimwiwa: 時間 06/06 19:16
jack155861: 其實蠻快的 06/07 08:40