【发布时间】:2017-01-01 10:48:41
【问题描述】:
我想从我订阅的网站中提取一些数据。我可以手动提取 csv 文件,但每天都有一个文件,我想要 5 年的数据,所以需要太长时间。
我使用 rvest 登录网站,但下载数据需要手动单击按钮,如何在 R 中执行此操作?
当我手动执行此操作时,文件会进入我的下载文件夹,这完全可以,因为我可以进行批量导入,但同样,如果我可以将数据直接加载到 R 中会更容易一些。
这是我目前所拥有的:
library(rvest)
url <-"http://www.horseracebase.com/index.php/"
pgsession <-html_session(url) ## create session
pgform <-html_form(pgsession)[[1]] ## pull form from session
filled_form <- set_values(pgform,
`login` = "xxx",
`password` = "yyy")
submit_form(pgsession,filled_form)
这让我登录(我认为)但现在我不知道如何提取数据?
我在必发做同样的事情,我使用类似的东西:
df <- read.csv("http://www.someurl.com/betfairdata.csv")
这很好用,但他们的所有文件都列在实际页面上,因此无需点击按钮。
有没有办法使用 rvest 与按钮进行交互,或者有没有办法找到正确的 URL,以便我可以像上面一样使用 read.csv?
谢谢
【问题讨论】:
-
@Floo0 我试过了,但没有成功,我没有任何例子可以工作。
标签: r web-scraping rvest