您好,我正在使用 R 中的 XML 包来抓取 html 页面。感兴趣的页面是http://www.ncbi.nlm.nih.gov/ Protein/225903367?report=fasta http://www.ncbi.nlm.nih.gov/protein/225903367?report=fasta在该页面上有一个序列,当检查 chrome 中的元素时,xpath 是
//*[@id="gi_225903367_141"]
但是当我尝试使用以下方法拉取它时:
xpathSApply(htmlParse(fasta.url.content),"//*[@id="viewercontent1"]/pre")
Error: unexpected symbol in "xpathSApply(htmlParse(fasta.url.content),"//*[@id="viewercontent1"
我收到上述错误。
XML 包是否对 xpath 很挑剔?
这是使用 Mathius 提供的 xpath 的查询
xpathSApply(htmlParse(fasta.url.content),"//span[contains(@id,'gi_225903367_1')]")
list()
attr(,"class")
[1] "XMLNodeSet"
我得到一个空列表。我不怀疑 xpath 是不正确的,但我想知道这是否与 R 相关。
问题是页面是使用 javascript 动态创建的,并且序列在返回到 R 的渲染中不可见。
CRAN 包“rentrez”提供了一个接口eutils http://www.ncbi.nlm.nih.gov/books/NBK25501/,这是查询 Entrez 的编程方式
library(rentrez)
entrez_fetch(db="protein", id="225903367", rettype="fasta")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)