rvest报废获取空表

时间:2018-11-11 09:28:56

标签: r web-scraping

我尝试使用多种方法从网站https://f3.vietstock.vn/APC/tai-chinh.htm?tab=KQKD抓取下表

enter image description here

我调查表的xpath是// * [@@ =“ =” finance-content“] / div / div / div [4] / div / table。因此,我使用以下代码

require(rvest)
require(XML)                                                  
require(RCurl)

doc<-read_html('https://f3.vietstock.vn/APC/tai-chinh.htm?tab=KQKD')

Data_table <- doc %>%
  html_nodes(xpath ='//*[@id="finance-content"]/div/div/div[4]/div/table') %>%
  html_table()

但是我Data_table一空。

1 个答案:

答案 0 :(得分:3)

在浏览器中使用开发人员工具,您会看到该网站使用了许多 XHR请求(这是广泛涵盖的主题,这意味着研究工作对于这个问题来说是最小的。)

enter image description here

突出显示的一个具有构成表格的数据。

如果您从“响应”切换到“标题”,则会看到XHR是通过POST请求完成的:

enter image description here

这意味着一个简单的jsonlite::fromJSON()不适用于该URL。

我使用了curlconverter软件包来自动地为此创建请求功能。右键单击左侧突出显示的行,然后选择“复制为cURL”,然后按照curlconverter中自述文件和手册页中的说明进行操作(还有{em>很多个使用{{1 }},因此-再次-实际上无需进行任何研究。

curlconverter

您可以自己找到其余的嵌套列表元素。