【发布时间】:2023-11-20 17:29:01
【问题描述】:
我正在尝试使用 rvest 下载 [完整的] 动态扩展的 [holdings] 表,但收到 Unknown field names 错误。
s <- html_session("http://innovatoretfs.com/etf/?ticker=ffty")
f <- html_form(s)[[1]]
#the following line fails:
f.new <- set_values(f, `__EVENTTARGET` = "ctl00$BodyPlaceHolder$ViewHoldingsLinkButton")
##subsequent lines are not tested##
doc <- submit_form(s, f.new)
tabs <- xml_find_all(doc, "//table")
holdings <- html_table(tabs, fill = T, trim = T)[[5]]
我对 HTML/HTTP 不是很好,但从我可以追查到的情况来看,在我看来,扩展表格需要使用这个新字段值集回发表单
检查set_values 函数后,似乎它只允许为现有字段赋值。
有没有办法在rvest 下的表单中添加新字段?如果没有,是否有人知道我可以使用另一个包来获得此功能?
[已编辑] 非常明确地表明我需要动态扩展表的完整版本并添加预期的后续表提取代码
【问题讨论】:
-
你是否想随着时间的推移刮掉 ETF 表? (10,000美元表的增长)
-
你也可以尝试使用 RSelenium 来刮桌子
-
@papelr 没有。我正在尝试抓取 FULL 持股表
-
@papelr 感谢指向RSelenium 的指针。不幸的是,它看起来像是在一条无人维护的道路上
-
我会采用下面的解决方案并提出另一个关于如何获得完整表的 SO 问题......但我也有 80% 的把握有人会告诉你走 RSelenium 路线跨度>