gpt4 book ai didi

html - R解析HTML文档并使用xpath获取两种模式的所有匹配项

转载 作者:太空狗 更新时间:2023-10-29 15:49:59 26 4
gpt4 key购买 nike

所以,我解析了来自 FIFA 世界杯网站的 HTML 代码,并希望获得所有比赛:

 wcup <- htmlTreeParse("http://www.fifa.com/worldcup/matches/", useInternalNodes=T)

但是,一个国家/地区的字段是“t-nText kern”,而其他国家/地区的字段是“t-nText”。

 <span class="t-nText kern">Bosnia and Herzegovina</span>

因此,如果我使用这个命令,我会错过'Bosnia and Herzegovina',就像这个命令:

xpathSApply(wcup, "//span[@class='t-nText ']", xmlValue)

那么,有什么方法可以同时搜索属性“t-nText”和“t-nText kern”吗?或者您有其他解决方案吗?我想保持比赛顺序不变。

xpath 不支持逻辑或:

xpathSApply(wcup, "//span[@class='t-nText ' || 't-nText kern']", xmlValue)
XPath error : Invalid expression
//span[@class='t-nText ' || 't-nText kern']
^
XPath error : Invalid expression
//span[@class='t-nText ' || 't-nText kern']
^
Error in xpathApply.XMLInternalDocument(doc, path, fun, ..., namespaces = namespaces, :
error evaluating xpath expression //span[@class='t-nText ' || 't-nText kern']

最佳答案

使用“或”或者“starts-with()”,

wcup["//span[@class='t-nText kern' or @class='t-nText ']"]
wcup["//span[starts-with(@class, 't-nText ')]"]

关于html - R解析HTML文档并使用xpath获取两种模式的所有匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24152559/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com