Return 来自使用 API 的维基百科页面的特定数据
Return specific data from a Wikipedia Page using API
我想将维基百科上的地理页面(即地标、名胜古迹)解析为 return 一个 json 文件,该文件仅包含页面标题和从页面上抓取的 GIS 坐标(s).
例如,查看页面: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 returns 页面内容中的所有数据。
不过,我只想return以下元素:
"title":"The Sanctuary"
坐标|51.41000|N|1.83173|W
谁能告诉我如何正确构建 Web 服务调用?
这是我第一次尝试从页面中扫描aping 内容,非常感谢任何指导
抓取的经验法则是不要这样做。 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"
}
]
}
}
}
}
我想将维基百科上的地理页面(即地标、名胜古迹)解析为 return 一个 json 文件,该文件仅包含页面标题和从页面上抓取的 GIS 坐标(s).
例如,查看页面: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 returns 页面内容中的所有数据。
不过,我只想return以下元素:
"title":"The Sanctuary" 坐标|51.41000|N|1.83173|W
谁能告诉我如何正确构建 Web 服务调用?
这是我第一次尝试从页面中扫描aping 内容,非常感谢任何指导
抓取的经验法则是不要这样做。 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"
}
]
}
}
}
}