Frage

Gibt es eine Möglichkeit programmatisch alle Geo-Tags zur Liste Wikipedia Einträge im Umkreis von einem langen / lat Punkt? Ich denke, dies ist möglich mit dem Google Maps API, aber ich bin in jedem Verfahren interessiert. HINWEIS:. Ich will nicht eine googlemap anzuzeigen

War es hilfreich?

Lösung

Ja, es ist möglich. Der schwierige Teil ist entweder:

(1) Screen-Scraping Wikipedia (schlechte Idee, wenn Sie bereits eine (kleine) Liste der Zielseiten haben)
(2) Das Herunterladen und Analysieren der massiven Wikipedia Datensätze (bessere Idee)

Wenn Sie lat / long-Koordinaten, die ich annehmen, sind in der Geotag Format der Wiki-Seite können Sie die Großkreis Formel berechnen relative Abstände und Bypass Googles API vollständig.

Die Moral dieser Geschichte? Wenn Sie schon mit Datensatz dieses massiven tun hat, du gehst so viel davon offline wie möglich tun wollen.

Andere Tipps

Ich habe ein etwas ähnliches Problem mithilfe der GeoNames webservices .

Sie können den Webservice nutzen Städte zu beantragen und so weiter. Es gibt eine pro-ip-Einschränkung können Sie nicht überschreiten.

suchte ich ein wenig weiter und es gibt etwas für Sie interessant. Der Webservice heißt findNearByWikipedia . Es kann die Sache, die Sie suchen für ...

Eine weitere Option ist DBpedia SPARQL-Schnittstelle. Zum Beispiel wird die folgende SPARQL Query wikipedia Artikel in einem Begrenzungsrahmen begrenzt durch die Koordinaten.

SPARQL Bibliotheken weit verbreitet, zum Beispiel für SPARQL Endpoint-Schnittstelle Python

Um es zu testen, fügen Sie einfach die Abfrage unten an diesen Online-Abfrage-Editor:

http://dbpedia.org/sparql

PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 
PREFIX onto: <http://dbpedia.org/ontology/> 

SELECT * WHERE {
?s a onto:Place .
?s geo:lat ?lat .
?s geo:long ?long .
FILTER ( ?long > 30.3 && ?long < 30.5 && ?lat > 50.4 && ?lat < 50.5)
} 

LIMIT 100

Ruft folgendes Ergebnis:

"s","lat","long"
"http://dbpedia.org/resource/Kotsiubynske","50.48972320556641","30.32888793945312"
"http://dbpedia.org/resource/Akademmistechko_%28Kiev_Metro%29","50.46555709838867","30.35499954223633"
"http://dbpedia.org/resource/Zhytomyrska_%28Kiev_Metro%29","50.45583343505859","30.36416625976562"
"http://dbpedia.org/resource/Sviatoshyn_Airfield","50.47833251953125","30.38500022888184"
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top