【发布时间】:2020-04-07 22:46:00
【问题描述】:
我正在尝试从(随机)维基百科条目中获取纬度和经度。
wiki_coordinates(website)
coordinates = website.xml.find('.//*[@id="coordinates"]/')
这是来自https://en.wikipedia.org/wiki/Seattle(纬度和经度)的HTML
HTML 有两个“有趣”的部分
<span class="latitude">47°36′35″N</span> <span class="longitude">122°19′59″W</span>
和
<span class="geo-dec" title="...">47.60972°N 122.33306°W</span>
问题在于每个维基百科条目都有不同的 xpath(或缺失)。
例如:
XPath = ".//*[@id="coordinates"]/span/span/a/span[1]/span"
XPath = ".//*[@id="coordinates"]/span/a/span[3]/span[1]"
谢谢!
【问题讨论】:
-
当你有文本输出时,don't take a picture but copy paste the output in your POST 也可以右键复制html -> 复制为outerHTML。
-
听起来像
index.find可能会返回其他错误值。 -
同意@khelwood,因为缺少有关传入数据的更多信息。您可以在
if index.find("th/a") is not None分支中发布th的值吗?如果它是一个空字符串,0、None或False,那么您已经得到了答案。 -
好的,很抱歉,我澄清了这个问题。谢谢。
标签: python xpath xml-parsing geocoding