既存のウィキペディアAPIを使用して、地理的位置に関する記事のリストを取得することは可能ですか?グーグルマップのように?
私は「ここ」にいると言い、ウィキペディアで私の周りに何があるかを調べたいと思います。
this のような記事で見ることができます右側に「座標」が表示されているので、これらの座標でクエリを実行したいと思います...
何かご意見は?
車輪の再発明はしないでください。 DBpedia を使用してください。
「lat」および「lon」データを含むサンプルページ 抽出 。
そして、 [〜#〜] sparql [〜#〜] で照会できます。
更新された回答:
Wikilocation は廃止され、現在は OFFICIAL WIKIPEDIA API
? action=query
& list=geosearch
& gsradius=<radius-in-meters>
& gscoord=<lat>|<lon>
Wikilocation を見てください。役に立つかもしれません。
これは現在、Special:Nearbyを通じてウィキペディアに組み込まれています。
このためのウィキペディアAPIはないようですが、 このウィキペディアページ は、他の人がこの情報をどのように利用するかを説明しています。
すべての座標は、ウィキペディアのデータベースダンプからダウンロードできます。すべての記事(enwiki-最新ページ-articles.xml.bz2、4ギガバイト)のXML形式のダンプから座標を取得するには、ダンプが上記の入力フォーマットの座標を含むページのために解析する必要があります。ウィキペディアのほとんどの記事はこれらの形式に準拠しており、座標は単純な文字シーケンスの正規表現を使用してウィキテキストから簡単に解析できます。すべての座標が同じPHPツールにリンクしているため、外部リンクのSQL形式のテーブル(enwiki-latest-externallinks.sql.gz、725MB)からも見つけることができます)。この2番目の方法ではただし、記事の本文とタイトル領域の間の位置など、座標に関する利用可能なすべての情報が含まれているわけではありません。
ソリューションjqueryおよびgeonamesAPI:
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は、少なくともドイツのWikipediaにとっては、適切なオプションではありません。カバレッジが小さすぎます。
現在、(ダンプから)さまざまな地理座標形式をすべて自分で解析しようとしていますが、実際にはさまざまなバリエーションがたくさんあるため、これは非常に困難です。
これは古い質問ですが、同様のクエリのURL形式は次のとおりです。
&gscoord=
の後には、座標を|
で区切って配置する必要があり、&gsradius=
の後には、検索半径をメートル単位で指定します。gslimitは、応答するエントリの最大数です。
応答にはJSONが含まれています。