是否可以使用现有的 Wikipedia API 获取有关地理位置的文章列表?有点像谷歌地图是怎么做的?
我想说我在“这里”,并在维基百科上找出我周围的东西。
我可以在这样的文章中看到您可以在右侧看到“坐标”,所以我想对这些坐标进行查询...
有什么想法吗?
是否可以使用现有的 Wikipedia API 获取有关地理位置的文章列表?有点像谷歌地图是怎么做的?
我想说我在“这里”,并在维基百科上找出我周围的东西。
我可以在这样的文章中看到您可以在右侧看到“坐标”,所以我想对这些坐标进行查询...
有什么想法吗?
更新答案:
Wikilocation已停用,现在有一个官方 WIKIPEDIA API
? action=query
& list=geosearch
& gsradius=<radius-in-meters>
& gscoord=<lat>|<lon>
看看Wikilocation,可能会有用。
这现在通过 Special:Nearby 内置到 Wikipedia 中。
似乎没有用于此的 Wikipedia API,但此 Wikipedia 页面描述了其他人如何使用此信息:
所有坐标均可在 Wikipedia 数据库转储中下载。要从所有文章的 XML 格式转储中获取坐标(enwiki-latest-pages-articles.xml.bz2, 4 GB),需要为包含上述条目格式坐标的页面解析转储。维基百科中的大多数文章都符合这些格式,并且坐标很容易从维基文本中用简单字符序列的正则表达式解析出来。由于所有坐标都链接到同一个 PHP 工具,它们也可以从外部链接的 SQL 格式表中找到(enwiki-latest-externallinks.sql.gz,725MB)。然而,第二种方法将不包括有关坐标的所有可用信息,例如它们在文章正文和标题区域之间的位置。
解决方案 jquery 和 geonames API:
a,b = 经度、纬度、推文 -> html div
function getcontent(a,b) {
jQuery(function($) {
$.getJSON('http://api.geonames.org/findNearbyWikipediaJSON?formatted=true&lat='+ a +'&lng='+ b +'&username=username&style=full&lang=de&wikipediaUrl&thumbnailImg', function(json) {
for(var i = 0; i < json.geonames.length; i++) {
$("#tweet").prepend('<span style="font-family: geneva, arial, helvetica, sans-serif;"><br><br><img src="wikilogo.gif"><br>' + json.geonames[i].summary + '<br><a href="http://'+ json.geonames[i].wikipediaUrl +'" target="_blank">'+ json.geonames[i].wikipediaUrl +'</a><br></span>');
}
});
});
}
DBpedia 和 SPARQL 不是很好的选择,至少对于德语维基百科来说不是:覆盖面太小。
我现在正在尝试自己解析所有不同的地理坐标格式(来自转储),但这非常困难,因为确实有很多不同的变体。
我知道,这是一个老问题,但这里是类似查询的 URL 格式:
在&gscoord=
你应该把坐标分开|
之后,&gsradius=
在搜索半径(以米为单位)之后,gslimit 是响应中的最大条目数。
响应包含 JSON。