Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用XML XPath的Wikipedia纬度和经度(Python)_Python_Xpath_Xml Parsing_Geocoding - Fatal编程技术网

使用XML XPath的Wikipedia纬度和经度(Python)

使用XML XPath的Wikipedia纬度和经度(Python),python,xpath,xml-parsing,geocoding,Python,Xpath,Xml Parsing,Geocoding,我试图从(随机)维基百科条目中获取纬度和经度 wiki_coordinates(website) coordinates = website.xml.find('.//*[@id="coordinates"]/') 这是HTML的来源(纬度和经度) HTML有两个“有趣”的部分 <span class="latitude">47°36′35″N</span> <span class="longitude">122°19′59″W</span>

我试图从(随机)维基百科条目中获取纬度和经度

wiki_coordinates(website)
coordinates = website.xml.find('.//*[@id="coordinates"]/')
这是HTML的来源(纬度和经度)

HTML有两个“有趣”的部分

<span class="latitude">47°36′35″N</span> <span class="longitude">122°19′59″W</span>

谢谢

试试这个xpath表达式,看看它是否适用于以下页面:

//span[@id="coordinates"]//span[@class="geo-dec"]//text()

如果你想直接(从维基百科顶部)索引纬度和经度,有两种方法

coordinates = website.xml.find('.//*[@class="geo-dec"]').text


希望这有帮助!:)

当您有文本输出时,也可以通过右键单击->复制为outerHTML来复制html。听起来像是
索引。find
可能会返回其他错误值。同意@khelwood,因为缺少有关传入数据的更多信息。如果index.find(“th/a”)不是None分支,您能否在
中发布
th
的值?如果是空字符串,
0
None
False
,那么您已经得到了答案。好的,很抱歉,我澄清了问题的内容。谢谢,谢谢。。。!coordinates=website.xml.find('./*[@class=“geo dec”]')确实有效。。让我在几页纸上测试一下你的想法(我将查看“西雅图”和“新加坡”)
//span[@id="coordinates"]//span[@class="geo-dec"]//text()
coordinates = website.xml.find('.//*[@class="geo-dec"]').text
latitude = website.xml.find('.//*[@class="latitude"]').text
longitude = website.xml.find('.//*[@class="longitude"]').text