我在R中拼抢并且使用“rvest”运气很好,但是我遇到了一个我无法解决的问题。
无论您在哪个表格页面,我试图抓取的网站都有相同的网址。例如,主网页是www.blah.com,其上有一个主表,其中有10个其他“下一页”同一个表,但只是下一个顺序(我为没有链接到实际页面道歉,因为我不能由于工作问题)。
所以,如果我在表的第1页,那么URL就是www.blah.com。如果我在表的第2页,URL是www.blah.com等等...... URL永远不会改变。
到目前为止,这是我的代码。我正在使用rvest和phantomjs的组合。代码完美无缺,但仅用于获取表格的第1页,而不是表格的相应“下一页”10页:
url <- "http://www.blah.com"
writeLines(sprintf("var page = require('webpage').create();
page.open('%s', function () {
console.log(page.content); //page source
phantom.exit();
});", url), con="scrape.js")
system(phantomjs scrape.js > scrape.html")
page <- html("scrape.html")
page %>% html_nodes("td:nth-child(4)") %>% html_text()
并且,这是来自网站的表格第2页的HTML代码(表格的所有其他页面都相同,只是将2替换为3,依此类推):
<li><a href="#" id="p_2">2</a></li>
非常感谢你给予的任何建议/帮助!