我正在尝试使用R抓取网站:
http://divulgacandcontas.tse.jus.br/divulga/#/candidato/2018/2022802018/GO/90000609234
它有几个包含很多信息的字段。我只对“ site do candidato”字段上方的网址感兴趣。在此示例中,我想要的网址是: “ http://vanderlansenador111.com.br”
问题是,没有HTML(可见)。因此,我认为使用rvest没有帮助(至少,我不知道如何使用它)。有没有办法不用硒就刮掉它(我从没用过Rselenium,并且在运行它时遇到了一些问题)。
指向任何值得赞赏的方向。
答案 0 :(得分:3)
别在Selenium上浪费时间。使用浏览器的开发人员工具部分来查找XHR请求:combine
只需使用jsonlite::fromJSON()
:
str(jsonlite::fromJSON("http://divulgacandcontas.tse.jus.br/divulga/rest/v1/candidatura/buscar/2018/GO/2022802018/candidato/90000609234"))
str()
输出很大且完整。您应该能够在那里找到所需的东西。
答案 1 :(得分:1)
硒是一个很好的选择,另外一种选择是您可以使用PhantomJS 在datacamp上有一个很好的关于过程的教程(不像Selenium那样干净)
https://www.datacamp.com/community/tutorials/scraping-javascript-generated-data-with-r