Geokodierung in Python

Ich habe zum ersten Mal seit einiger Zeit die Python-Bibliothek ausprobiert, um mich daran zu erinnern. Ich habe "Geopy" und "Geocoder" verwendet. Da ich Google Colab verwendet habe, ist die Version von Python 3. https://colab.research.google.com/drive/1LlQ2131p4JV3IY9xOyZcGp_Wg3fRk2p3

Installationspaket

$ pip install geopy geocoder

https://github.com/geopy/geopy https://github.com/DenisCarriere/geocoder

code geocoder

import geocoder

my_location = geocoder.ip('me')
my_location.geojson

Seit ich es in Colab ausgeführt habe, ist org Google. Ich habe mich gefragt, ob die Adresse im Westen herauskommen würde, aber es scheint, dass sie automatisch mit einem physisch geschlossenen Server verbunden ist. Der Ort, an dem ich den Code ausgeführt habe, ist übrigens die Innenstadt von NY.

{'features': [{'geometry': {'coordinates': [-74.006, 40.7143],
    'type': 'Point'},
   'properties': {'address': 'New York City, New York, US',
    'city': 'New York City',
    'country': 'US',
    'hostname': '169.205.229.35.bc.googleusercontent.com',
    'ip': '35.229.205.169',
    'lat': 40.7143,
    'lng': -74.006,
    'ok': True,
    'org': 'AS15169 Google LLC',
    'postal': '10004',
    'raw': {'city': 'New York City',
     'country': 'US',
     'hostname': '169.205.229.35.bc.googleusercontent.com',
     'ip': '35.229.205.169',
     'loc': '40.7143,-74.0060',
     'org': 'AS15169 Google LLC',
     'postal': '10004',
     'readme': 'https://ipinfo.io/missingauth',
     'region': 'New York',
     'timezone': 'America/New_York'},
    'state': 'New York',
    'status': 'OK'},
   'type': 'Feature'}],
 'type': 'FeatureCollection'}
#Längengrad Breitengrad
my_location.latlng

#Adresse
my_location.address

Da die Adresse nicht bis zur Adresse angezeigt wird, wenn die Granularität der entsprechenden Daten Stadtgröße usw. ist. Gonyo Gonyo scheint einfach zu sein.

[40.7143, -74.006]
'New York City, New York, US'

code geopy

from geopy.geocoders import Nominatim
#Locator erstellen
geolocator = Nominatim(user_agent="user", timeout=10)
location = geolocator.geocode('New York City, New York, US')
location.latitude, location.longitude
location = geolocator.reverse("40.7127281 -74.0060152")
location.address

Ich habe die vom Geocoder angezeigte Adresse zum Vergleich verwendet. Es scheint, dass Geopy detaillierter herauskommt, soweit ich auf Google Maps sehen kann, ist die Genauigkeit der Adresse ziemlich gut. https://www.google.com/maps/place/40%C2%B042'45.8%22N+74%C2%B000'21.7%22W/@40.7127281,-74.0066803,18z/data=!3m1!4b1!4m5!3m4!1s0x0:0x0!8m2!3d40.7127281!4d-74.0060152

(40.7127281, -74.0060152)
'New York City Hall, 260, Broadway, Civic Center, Manhattan Community Board 1, Manhattan, New York County, New York, 10000, United States of America'

Schließlich überprüfte ich die Entfernung zwischen dem Tokyo Tower und dem Times Square.

from geopy import distance

loc_tokyo = geolocator.geocode("Tokyo tower, Tokyo, Japan")
loc_times_square = geolocator.geocode("Times Square, Manhattan, NY")
src = (loc_tokyo.latitude, loc_tokyo.longitude)
dist = (loc_times_square.latitude, loc_times_square.longitude)
distance.distance(src, dist).km
distance.distance(src, dist).miles

Es war leicht zu löschen. Wenn Sie sich jedoch die Adresse von loc_tokyo ansehen, Die Adresse ist unbekannt: "Tokyo Tower, Tokyo Tower Street, Azabu, Minami Aoyama 6, Minato Ward, Tokio, 105-0011, Japan". Wenn Sie die Standorte von Tokio und NY mit lat & lon richtig einstellen, erhöht sich möglicherweise die Genauigkeit.

10870.216621346974 # km
6754.439461884453 # mile

Recommended Posts

Geokodierung in Python
Quadtree in Python --2
Python in der Optimierung
CURL in Python
Metaprogrammierung mit Python
Python 3.3 mit Anaconda
SendKeys in Python
Metaanalyse in Python
Unittest in Python
Epoche in Python
Zwietracht in Python
Deutsch in Python
DCI in Python
Quicksort in Python
nCr in Python
N-Gramm in Python
Programmieren mit Python
Plink in Python
Konstante in Python
FizzBuzz in Python
SQLite in Python
Schritt AIC in Python
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python
Konstante in Python
nCr in Python.
Format in Python
Scons in Python 3
Puyopuyo in Python
Python in Virtualenv
PPAP in Python
Quad-Tree in Python
Reflexion in Python
Chemie mit Python
Hashbar in Python
DirectLiNGAM in Python
LiNGAM in Python
In Python reduzieren
In Python flach drücken
Sortierte Liste in Python
Täglicher AtCoder # 36 mit Python
Clustertext in Python
AtCoder # 2 jeden Tag mit Python
Täglicher AtCoder # 32 in Python
Täglicher AtCoder # 6 in Python
Täglicher AtCoder # 18 in Python
Bearbeiten Sie Schriftarten in Python
Singleton-Muster in Python
Dateioperationen in Python
Lesen Sie DXF mit Python
Täglicher AtCoder # 53 in Python
Tastenanschlag in Python
Verwenden Sie config.ini mit Python
Täglicher AtCoder # 33 in Python
Löse ABC168D in Python
Logistische Verteilung in Python