html - Rvest 网页抓取带来仅包含列名称的空数据表

标签 html r xpath web-scraping rvest

我一直在尝试从这个网址使用inf“rvest”包抓取股票市场:http://finans.mynet.com/borsa/canliborsa/#A这需要注册。我创建了虚拟帐户供您尝试。下面的用户名和密码是真实的并且可以正常工作。 我得出的结论如下:

library("rvest")
library("data.table")

url<- "http://uyeler.mynet.com/login/login.asp?rurl=http%3A%2F%2Ffinans.mynet.com%2Fborsa%2Fcanliborsa%2F&formname=finans#A"
session<-html_session(url)
form<- html_form(session)[[1]]

login<- set_values(form, "username" ="muharrem_babaogul_1991","password"="q1w2e3")
submit_form(session,login)

jumped<-jump_to(session,url = 'http://finans.mynet.com/borsa/canliborsa/#A')

page<- read_html(jumped)
page<-html_nodes(page,xpath='//*[@id="canliLeftColumn"]/div[3]/table')
page<-  html_table(page)
head(page[[1]])

结果:

[1] Hisse         Hisse         Hisse         Son           Alış         
[6] Satış         %Fark         En Düşük      En Yüksek     AOF          
[11] Hacim (Lot)   Hacim (TL)    Son İşlem     Ekle / Kaldır
<0 rows> (or 0-length row.names)

如您所见,我可以使用 xpath 访问该表,我获得了列名,但内部没有任何数据。 table 完全是空的。 有谁可以帮忙吗? 提前致谢。

最佳答案

问题已解决。感谢您的帮助@Dave2e。我发现 Jump_to 函数可以抓取数据并将其包含在 $response 中。下面的代码给出了 txt 数据,仅将其拆分。

url<- "http://uyeler.mynet.com/login/login.asp?rurl=http%3A%2F%2Ffinans.mynet.com%2Fborsa%2Fcanliborsa%2F&formname=finans#A"
session<-html_session(url)
form<- html_form(session)[[1]]

login<- set_values(form, "username" ="muharrem_babaogul_1991","password"="q1w2e3")
submit_form(session,login)


jumped<-jump_to(session,url = 'http://finans.mynet.com/borsa/canliborsadata/data.fdata')

file<-content(jumped$response,as="text")

关于html - Rvest 网页抓取带来仅包含列名称的空数据表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40723875/

相关文章:

javascript - sidenav 多个下拉列表的 iframe 更改

R 绘图因子与 y 轴上的值

r - 如何将绘图合并到一个 .pdf 中?

xpath - 如何在 xpath 中选择替代子路径

javascript - 运行 js 脚本时,Bootstrap 4 carousel 停止工作

javascript - jQuery Validate - 每个元素有多个规则?

c# - 灯开关 : How to change the display text in Details Modal Picker

r - R中多个列和多行的表频率

xslt - 如何在XPath/XSLT中获取数字的模数?

python - xpath当兄弟不是元素时如何获取文本