我正在尝试从XML文件中提取所有loc节点,该XML文件的格式如下:
<urlset>
<url>
<loc>http://www.voa.org</loc>
<lastmod>2018-09-06T05:00:09-04:00</lastmod>
<changefreq>always</changefreq>
<priority>1.0</priority>
</url>
</urlset>
我已使用以下代码将其导入R:
require(xml2)
doc <- read_xml("<urlset>
<url>
<loc>http://www.url.org</loc>
<lastmod>2018-09-06T05:00:09-04:00</lastmod>
<changefreq>always</changefreq>
<priority>1.0</priority>
</url>
</urlset>")
如果我使用xpath“ // *”,则R成功提取了所有节点:
xml_find_all(doc,"//*")
{xml_nodeset (6)}
[1] <urlset>\n <url>\n <loc>http://www.url.org</loc>\n <lastmod>20 ...
[2] <url>\n <loc>http://www.url.org</loc>\n <lastmod>2018-09-06T05:00:0 ...
[3] <loc>http://www.url.org</loc>
[4] <lastmod>2018-09-06T05:00:09-04:00</lastmod>
[5] <changefreq>always</changefreq>
[6] <priority>1.0</priority>
但是如果我使用xpath“ // loc”隔离所有loc节点,我什么也没得到:
xml_find_all(voa.sites,"//loc")
{xml_nodeset (0)}
我输入xpath错误吗?我真的很沮丧。
谢谢!