Ho un file csv con circa 4 milioni di record, lat long e ho 400 di tali file. Voglio i nomi di stato per tutti questi dati in modo che posso aggiungere al file di aver lat long. Sto usando python e ho provato ad utilizzare Nominatim, ma ci vogliono molte ore per elaborare i file. C'è alcun modo rapido per ottenere il lavoro fatto utilizzando qualsiasi circuito. Nota - Lat Long dati è in gran parte dagli stati UNITI. E tutti e 400 i nomi di file sono in una sequenza. Grazie in anticipo!
Nominatim utilizzo è limitato a circa 1 richiesta al secondo. Se si fare di più, il vostro indirizzo IP verrà bannati.
Presenti molte soluzioni, ma la questione principale è: quanto si può permettersi di spendere tempo e denaro per risolvere il tuo bisogno?
L'operazione principale di cui hai bisogno è chiamato reverse geocoding.
Una soluzione a basso costo è la distribuzione di un'istanza di Nominatim locale. Tuttavia, questo richiede un bel po ' di tempo e un recente macchina con una grande quantità di memoria, e, idealmente, un disco SSD.
In caso contrario, si dispone di API servizi che è possibile utilizzare: Google Map API, OpenCageData, Qui, etc.
In tutti i casi, per risolvere Uniti per il tuo 4M record, suggerisco l'invio di richieste in batch quando possibile e/o in parallelo.