R中的rvest无法选择悬停弹出文本

时间:2018-06-08 16:42:56

标签: html css r web-scraping rvest

我一直试图从此链接中删除费率数据: https://icoholder.com/en/patron-17242

您可以在右侧看到,给出了网络图,如果您保留名称(即ICO个人资料),则会给出分数。

但是,无法提取该特定信息的选择器或Xpath。

< span class="ico-radar-names ico-profile" data-name="profile" data-value="4.3" >ICO Profile< /span > 

您可以看到得分的标记为data-value。但是当我在R中使用rvest进行尝试时,我得到的标记结果是:

  

read_html('https://icoholder.com/en/patron-17242')%&gt;%html_nodes('。ico-profile')[1]

< span class="ico-radar-names ico-profile" data-name="profile" >ICO Profile< /span >

您可以看到,当节点被rvest录制时,data value将丢失。

你知道为什么会这样吗?我怎么解决它?

干杯!

1 个答案:

答案 0 :(得分:0)

为什么您无法使用它是因为信息不在页面源中。您的浏览器会自动发送更多请求,并在以后接收和呈现。

请改用隐藏的API:https://icoholder.com/en/get_rating/17242

结果以简单的JSON格式返回,非常易于使用:

[{"category":"profile","value":4.3},{"category":"vision","value":4.8},{"category":"activity","value":4},{"category":"potential","value":4.5},{"category":"product","value":4.5},{"category":"team","value":4.8},{"general":4.49},{"on":true}]

找到它的方法是在Chrome中打开开发人员工具。它位于网络标签下。

enter image description here

您也可以使用Rselenium,但这应该是一种过度杀伤。