我想解析维基百科上的地理页面(即地标,名胜古迹),以返回仅包含页面标题的json文件,以及从页面中删除的GIS坐标。
例如,查看页面:https://en.wikipedia.org/wiki/The_Sanctuary
使用api:https://en.wikipedia.org/w/api.php?action=query&titles=The%20Sanctuary&prop=revisions&rvprop=content&format=json返回页面内容中的所有数据。
但是,我只想返回以下元素:
“title”:“The Sanctuary” 坐标| 51.41000 | N | 1.83173 | W
请任何人都可以建议如何正确构建网络服务电话?
这是我第一次尝试从网页抓取内容,所以任何指导都非常感谢
答案 0 :(得分:1)
刮擦的经验法则是不要这样做。 API中提供了许多内容(使用API sandbox来发现它们)。对于大多数其他有趣的数据,有人已经写了一个库。
在这种情况下,action=query&titles=The_Sanctuary&prop=coordinates会为您提供所需内容:
{
"batchcomplete": "",
"query": {
"pages": {
"788970": {
"pageid": 788970,
"ns": 0,
"title": "The Sanctuary",
"coordinates": [
{
"lat": 51.41,
"lon": -1.83173,
"primary": "",
"globe": "earth"
}
]
}
}
}
}