【发布时间】:2018-12-01 05:39:07
【问题描述】:
我正在尝试遍历 ID 列表以从 Fangraphs 中删除一些表格。以下代码在我插入单个 id 并删除 for 循环时有效,但在我重新插入 for 循环时给出错误(即 open.connection(x, "rb") 中的错误:HTTP 错误 400。)。我环顾了各个地方,包括here 和here,但我尝试的任何方法似乎都不起作用。我还将原来的 1000 多个 ID 列表缩短到只有 10 个,但仍然收到错误消息。
有人可以帮忙吗?感觉这应该是一个非常简单的抓取任务,因为除了 ID 和页面布局非常简单,url 完全相同。提前非常感谢。
for (id in pitchIDs$playerid) {
url <- paste("https://www.fangraphs.com/statsd.aspx?
playerid=",id,"&position=P&type=&gds=&gde=&season=all")
gamelogs <- url %>%
read_html() %>%
html_nodes(xpath = '//*[@id="DailyStats1_dgSeason1_ctl00"]') %>%
html_table()
gamelogs$id <- id
}
【问题讨论】:
-
您可以尝试使用
paste0在连接您的网址时设置一个空的分隔符。我不确定带空格的网址是否可以使用。如果不是这样:您能否提供可复制的 ID 列表?
标签: r for-loop web-scraping rvest