我想在下面的 HTML 代码块中检索图像源,但找不到正确的语法。
library(XML)
library(RCurl)
script <- getURL("http://www.floraweb.de/pflanzenarten/druck.xsql?suchnr=4346")
(doc <- htmlParse(script))
<div class="divider"><hr></div>
<div id="contentblock"><div id="content">
<h1>Alle Angaben</h1>
<p>Zu der von Ihnen gewählten Pflanzenart liegen folgende Informationen vor:</p>
<p><a href="../glossar.html#bname">Wissenschaftlicher Name</a>:Â Poa badensis agg. </p>
<p><a href="../glossar.html#bdeu">Deutscher Name</a>:Â Artengruppe Badener Rispengras</p>
<p><a href="../glossar.html#bfam">Familienzugehörigkeit</a>: Poaceae, Süßgräser</p>
<p><a href="../glossar.html#bsta">Status</a>: keine Angaben </p>
<p class="centeredcontent"><img border="0" src="../bilder/Arten/dummy.tmb.jpg"></p>
期望的结果: “../bilder/Arten/dummy.tmb.jpg”
非常感谢任何指点!
最佳答案
尝试以下操作:
script <- getURL("http://www.floraweb.de/pflanzenarten/druck.xsql?suchnr=4346")
doc <- htmlTreeParse(script,useInternalNodes=T)
img<-xpathSApply(doc,'//*/p[@class="centeredcontent"]/img',xmlAttrs)
> img[2]
[1] "../bilder/Arten/dummy.tmb.jpg"
可能需要使用内部表示
编辑:
我刚刚查找了 htmlParse
及其等效于 htmlTreeParse(useInternalNodes=T)
@Martin Morgan 感谢已在下方添加
doc <- htmlParse("http://www.floraweb.de/pflanzenarten/druck.xsql?suchnr=4346")
xpathSApply(doc, '//*/p[@class="centeredcontent"]/img/@src')
关于使用 XML-Package 在 R 中使用 XPath 检索图像源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11066967/