Re: [問題] 下載網頁連結檔案

作者: celestialgod (天)   2017-05-02 23:11:45
※ 引述《l111011 (Mr.Pickles)》之銘言:
: 我原本是要從 https://itouch.cycu.edu.tw/active_system/CourseQuerySystem/
: 取表格 , 但是 R 的讀XML的函式貌似沒辦法讀這種動態網頁
: http://i.imgur.com/cmIYmjh.png
: 所以我改去嘗試下載上圖的連結
: 看了一下F12 , 要下載這個連結似乎要用HTTR中的POST
: 參考了 http://leoluyi.logdown.com/posts/406397-crawler-mops-2
: 的方法
: 但是
: http://i.imgur.com/sBuTzm9.png
: 這個連結直接把上一頁資料塞在From data 給他轉成xls
: 看起來要用httr下載此連結應該不行(要傳上一頁資料)
: 請問有什麼方法
library(httr)
library(pipeR)
url <-
"https://itouch.cycu.edu.tw/active_system/CourseQuerySystem/GetCourses.jsp"
courseInfo <- POST(url, query = list(yearTerm = 1052)) %>>% content("text")
x <- strsplit(strsplit(courseInfo, "@@")[[1]], split = "|", fixed = TRUE)
do.call(rbind, x[-1])
結果圖:
http://imgur.com/a/jZvHN
url是從開發者工具找到的,找到這個連結就可以全部抓下來了
( http://imgur.com/a/XyiMf )
然後給不同yearTerm就可得到不同學年的資料
作者: l111011 (Mr.Pickles)   2017-05-03 00:37:00
先感謝您 , 另外您rbind要去除第1列, 但是好像沒去除還有切割字串似乎有問題,不過我應該自己能處理感謝您費心幫忙,當初沒仔細找錯方向
作者: celestialgod (天)   2017-05-03 08:08:00
你自己再稍加修改吧,我這裡測出來是沒什麼問題就是
作者: l111011 (Mr.Pickles)   2017-05-03 10:07:00
您可以用view(x),會發現有row長度不同,看那幾個,資料是有錯的阿,sorry忘了assign回去,您是對的

Links booklink

Contact Us: admin [ a t ] ucptt.com