Html R中的XML包中缺少xpathSApply信息
使用Html R中的XML包中缺少xpathSApply信息,html,xml,r,web-scraping,Html,Xml,R,Web Scraping,使用R中XML包中的htmlpasse和xpathSApply,我遇到了一个问题,无法从网页上的某个HTML元素下载xmlValue。我对使用R进行网页抓取相当陌生(如果不是完全陌生的话),因此我不确定需要做什么才能获得所需的信息 基本上,我所针对的页面中的代码部分如下所示: <div class="panel-body"> <div id="primarycitation"> <h4>Tetracycline Repressor Allost
R
中XML包中的htmlpasse
和xpathSApply
,我遇到了一个问题,无法从网页上的某个HTML元素下载xmlValue
。我对使用R
进行网页抓取相当陌生(如果不是完全陌生的话),因此我不确定需要做什么才能获得所需的信息
基本上,我所针对的页面中的代码部分如下所示:
<div class="panel-body">
<div id="primarycitation">
<h4>Tetracycline Repressor Allostery Does not Depend on Divalent Metal Recognition.
</h4>
我用过:
script2 <- xpathSApply(body,
"//div[@id = 'primarycitation']",
xmlValue)
再说一遍,我对网页抓取不是很熟悉,但就我所知,根据我迄今为止在所有其他功能方面的经验,引用标题应该是xpathsaply
得出的值。有什么建议吗
**要在末尾加上它,我这里使用的pdbId
是4D7N
我想你可以用你的xpath直接进入//div/h4
,它会返回list()
(也就是说,list of 0
)如果x
是html,那么这就是我得到的:xpathsaply(htmlpasse(x),“//div/h4”,xmlValue,trim=TRUE)#四环素阻遏物变构不依赖于二价金属识别。“
有趣的是,我回去仔细检查了我的值body
是否有信息,但看起来它只有
。也许我在网页上使用htmlpasse
的方式有问题?信息来自一个JS XHR请求,这就是为什么在“标准”解析中div是空的。当显示的内容与通过编程解析的内容之间存在差异时,检查XHR请求总是一个好主意。我想你可以用你的xpath直接进入//div/h4
,如果x
是html,它会返回list()
(即0的列表
),这就是我得到的:xpathsaply(htmlpasse(x),“//div/h4”,xmlValue,trim=TRUE)##[1]“四环素阻遏物变构不依赖于二价金属识别。”
有趣的是,我回去仔细检查了我的值body
然后得到了信息,但它看起来只有
。也许我在网页上使用htmlpasse
的方式有问题?信息来自一个JS XHR请求,这就是为什么在“标准”解析中div是空的。当显示的内容和编程解析的内容之间存在差异时,检查XHR请求总是一个好主意。
script2 <- xpathSApply(body,
"//div[@id = 'primarycitation']",
xmlValue)
> script2
[1] "\n \n "