Sebagai contoh jika kita memiliki set koordinat ini
"latitude": 48.858844300000001,
"longitude": 2.2943506,
Bagaimana kita bisa mengetahui kota / negara?
geolocation
geocoding
geospatial
geo
ming kamu
sumber
sumber
Jawaban:
Google Geocoding API gratis menyediakan layanan ini melalui HTTP REST API. Perhatikan, API adalah penggunaan dan tarif terbatas , tetapi Anda dapat membayar untuk akses tanpa batas.
Coba tautan ini untuk melihat contoh output (ini dalam json, output juga tersedia dalam XML)
https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=true
sumber
Pilihan lain:
Keuntungan:
Kekurangan:
sumber
Kamu butuh
geopy
lalu:
untuk mendapatkan informasi lebih lanjut:
sumber
Alternatif Open Source adalah Nominatim dari Open Street Map. Yang harus Anda lakukan adalah mengatur variabel dalam URL dan mengembalikan kota / negara lokasi itu. Silakan periksa tautan berikut untuk dokumentasi resmi: Nominatim
sumber
Saya sedang mencari fungsi yang sama dan saya melihat data " http://download.geonames.org/export/dump/ " dibagikan pada balasan sebelumnya (terima kasih telah berbagi, ini adalah sumber yang sangat baik), dan menerapkan layanan berbasis pada data cities1000.txt.
Anda dapat melihatnya berjalan di
http://scatter-otl.rhcloud.com/location?lat=36&long=-78.9(tautan rusak) Ubah saja garis lintang dan bujur untuk lokasi Anda.Ini digunakan pada OpenShift (Platform RedHat). Panggilan pertama setelah periode idle yang lama mungkin memakan waktu, tetapi biasanya kinerja memuaskan. Jangan ragu untuk menggunakan layanan ini sesuka Anda ...
Anda juga dapat menemukan sumber proyek di https://github.com/turgos/Location .
sumber
Saya telah menggunakan Geocoder , pustaka Python bagus yang mendukung banyak penyedia, termasuk Google, Geonames, dan OpenStreetMaps, untuk menyebutkan beberapa saja . Saya sudah mencoba menggunakan perpustakaan GeoPy, dan sering mengalami timeout. Mengembangkan kode Anda sendiri untuk GeoNames bukanlah penggunaan waktu Anda yang terbaik dan Anda mungkin mendapatkan kode yang tidak stabil. Geocoder sangat mudah digunakan dalam pengalaman saya, dan memiliki dokumentasi yang cukup baik . Di bawah ini adalah beberapa contoh kode untuk mencari kota dengan lintang dan bujur, atau menemukan lintang / bujur dengan nama kota.
sumber
geocoder
, saya juga ingin mencobanya sendiri!Saya menghabiskan sekitar 30 menit untuk mencoba menemukan contoh kode tentang bagaimana melakukan ini dalam Javascript. Saya tidak dapat menemukan jawaban yang jelas dan cepat untuk pertanyaan yang Anda posting. Jadi ... saya buat sendiri. Mudah-mudahan orang dapat menggunakan ini tanpa harus menggali ke dalam API atau menatap kode yang mereka tidak tahu cara membaca. Ha kalau tidak ada yang lain saya bisa mereferensikan posting ini untuk barang-barang saya sendiri .. Pertanyaan yang bagus dan terima kasih untuk forum diskusi!
Ini memanfaatkan Google API.
.
sumber
Saya tahu pertanyaan ini benar-benar sudah tua, tetapi saya telah mengerjakan masalah yang sama dan saya menemukan paket yang sangat efisien dan nyaman
reverse_geocoder
, yang dibangun oleh Ajay Thampi. Kode tersedia di sini . Itu didasarkan pada implementasi paralel dari pohon-pohon KD yang sangat efisien untuk sejumlah besar poin (saya butuh beberapa detik untuk mendapatkan 100.000 poin.Itu didasarkan pada database ini , sudah disorot oleh @turgos.
Jika tugas Anda adalah menemukan negara dan kota dari daftar koordinat dengan cepat, ini adalah alat yang hebat.
sumber
Ini benar-benar tergantung pada batasan teknologi apa yang Anda miliki.
Salah satu caranya adalah memiliki basis data spasial dengan garis besar negara dan kota yang Anda minati. Secara garis besar maksud saya bahwa negara dan kota disimpan sebagai poligon jenis spasial. Set koordinat Anda dapat dikonversi ke titik jenis spasial dan ditanyai dengan poligon untuk mendapatkan nama negara / kota tempat titik tersebut berada.
Berikut adalah beberapa database yang mendukung tipe spasial: SQL server 2008 , MySQL , postGIS - ekstensi postgreSQL dan Oracle .
Jika Anda ingin menggunakan layanan sebagai pengganti memiliki database Anda sendiri untuk ini, Anda dapat menggunakan GeoPlanet Yahoo . Untuk pendekatan layanan, Anda mungkin ingin memeriksa jawaban ini di gis.stackexchange.com , yang mencakup ketersediaan layanan untuk menyelesaikan masalah Anda.
sumber
Anda dapat menggunakan Google Geocoding API
Di bawah adalah fungsi php yang mengembalikan Alamat, Kota, Negara dan Negara
sumber
Loc2country adalah alat berbasis Golang yang mengembalikan kode negara ISO alpha-3 untuk koordinat lokasi tertentu (lat / lon). Merespon dalam mikrodetik. Ini menggunakan geohash ke peta negara.
Data geohash dihasilkan menggunakan georaptor .
Kami menggunakan geohash pada level 6 untuk alat ini, yaitu, kotak ukuran 1,2km x 600m.
sumber
Minimalkan jumlah perpustakaan.
Dapatkan kunci untuk menggunakan api di situs web mereka dan dapatkan hasilnya dalam permintaan http:
curl -i -H "key: YOUR_KEY" -X DAPATKAN https://api.latlong.dev/lookup?lat=38.7447913&long=-9.1625173
sumber
Silakan periksa jawaban di bawah ini. Ini bekerja untuk saya
sumber
Jika Anda menggunakan Google Places API, ini adalah bagaimana Anda bisa mendapatkan negara dan kota dari objek tempat menggunakan Javascript:
sumber