Geolocation 地理位置维基百科API

Geolocation 地理位置维基百科API,geolocation,wikipedia,wikipedia-api,Geolocation,Wikipedia,Wikipedia Api,是否可以使用现有的WikipediaAPI获取地理位置周围的文章列表?有点像谷歌地图是怎么做到的 我想说我“在这里”,看看维基百科上我周围的是什么 我可以在文章的右边看到“坐标”,所以我想查询一下这些坐标 有什么想法吗?似乎没有Wikipedia API用于此,但描述了其他人如何利用此信息: 所有坐标都可用于 在维基百科数据库转储中下载。 从XML中获取坐标 所有文章的格式转储 (enwiki-latest-pages-articles.xml.bz2, 4 GB),需要对转储进行分析 页面中包

是否可以使用现有的WikipediaAPI获取地理位置周围的文章列表?有点像谷歌地图是怎么做到的

我想说我“在这里”,看看维基百科上我周围的是什么

我可以在文章的右边看到“坐标”,所以我想查询一下这些坐标


有什么想法吗?

似乎没有Wikipedia API用于此,但描述了其他人如何利用此信息:

所有坐标都可用于 在维基百科数据库转储中下载。 从XML中获取坐标 所有文章的格式转储 (enwiki-latest-pages-articles.xml.bz2, 4 GB),需要对转储进行分析 页面中包含坐标的页面 上面列出的输入格式。最 维基百科中的文章符合这些要求 格式和坐标很容易理解 使用正则表达式从wikitext解析 简单字符的表达式 序列。因为所有坐标都链接到 同样的PHP工具,它们也可能是 从的SQL格式表中找到 外部链接 (enwiki-latest-externallinks.sql.gz, 725MB)。第二种方法将 但是,不包括所有可用的 关于坐标的信息, 比如他们之间的位置 文章正文和标题区


不要重新发明轮子,使用它。
带有“lat”和“lon”数据的示例页面。

可以使用。

解决方案jquery和geonames API查询:

a、 b=经度、纬度、tweet->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>');
            }
        }); 
    }); 
}
函数getcontent(a,b){ jQuery(函数($){ $.getJSON('http://api.geonames.org/findNearbyWikipediaJSON?formatted=true&lat=“+a+”&lng=“+b+”&username=username&style=full&lang=de&wikipediaUrl&thumbnailImg”,函数(json){ for(var i=0;i
'+json.geonames[i].summary+'

'); } }); }); }
看看,可能有用。

DBpedia和SPARQL不是很好的选择,至少对德语维基百科来说不是:覆盖范围太小


我现在正试图自己解析所有不同的地理坐标格式(从垃圾堆中),但这相当困难,因为有很多不同的变体。

这是现在通过Special:Nearest内置到维基百科中的


更新的答案:
已经退休,现在有一个

?动作=查询
&列表=地理搜索
&gsradius=
&格斯库德=|

|我知道,这是一个老问题,但下面是类似查询的URL格式:

&gscoord=
之后,您应该放置由
|
分隔的坐标,在
&gsradius=
以米为单位的搜索半径之后,gslimit是响应的最大条目数


响应中包含JSON。

您甚至可以使用Google maps的API从其Wikipedia层获取结果。刚刚发现:这可能对我有帮助…@BennyJobigan您能详细说明一下吗?感谢Philipp,我确实获得了一些DB转储,很遗憾您不得不走这条路。但正如我所评论的,我现在可能只使用该服务……坐标实际上非常耗时,因为它们有几种不同的格式。有关格式的更多详细信息,请参阅。有趣的是,我甚至不知道该项目存在!谢谢,我会好好看一看:)@jpatokal:如何使用dbpedia解决问题?你能解释一下吗?更新:Wikilocation已经退役,现在有一个
? action=query
& list=geosearch
& gsradius=<radius-in-meters>
& gscoord=<lat>|<lon>