如何使用R发送搜索词并从网站检索信息

时间:2018-07-07 19:14:59

标签: r web-scraping

我想在此网站(http://www.commonchemistry.org/)上搜索一千多种不同药物的列表,然后获取每种药物的CAS号。

我查找了“ httr”软件包,但是我没有刮网的经验。有没有简单的方法可以做到这一点?

非常感谢您

1 个答案:

答案 0 :(得分:2)

使用search.aspx和搜索词,并使用rvest包在HTML中寻找合适的元素:

> library(rvest)
> h = read_html("http://www.commonchemistry.org//search.aspx?terms=paracetamol")
> html_text(html_node(h,"#registryNumberLabel"))
[1] "103-90-2"

适用于“阿司匹林”和“扑热息痛”,但是“伟哥”返回NA,因为未找到。可能会发生其他事情。

添加&exact=true以对搜索词进行完全匹配,否则,您可能会在格式略有不同的页面上获得多个匹配项。