Method One:
Using Geopy Package: https://github.com/geopy/geopy (only accurate to town, concrete streets no results returned)
from Import Nominatim # using geopy queries def Geocoden (address): GPS=nominatim () location =Gps.geocode (address) return Location.longitude,location.latitude
Method Two:
Use the Api,key map or Baidu map to apply for replacement on the official website.
ImportRequests#using the high-de APIdefgeocodeg (address): par= {'Address': Address,'Key':'cb649a25c1f81c1451adbeca73623251'} base='Http://restapi.amap.com/v3/geocode/geo'Response=Requests.get (base, par) answer=Response.json () GPS=answer['geocodes'][0][' Location'].split (",") returnGps[0],gps[1]#use Baidu APIdefGeocodeb (address): Base= URL ="http://api.map.baidu.com/geocoder?address="+ Address +"&OUTPUT=JSON&KEY=F247CDB592EB43EBAC6CCD27F796E2D2"Response=Requests.get (Base) Answer=Response.json ()returnanswer['result'][' Location']['LNG'],answer['result'][' Location']['lat']
Calculate the distance between two latitude and longitude:
from Import radians, cos, sin, asin, SQRT # calculate Distance-m between two points def geodistance (LNG1,LAT1,LNG2,LAT2): = Map (radians, [Lng1, LAT1, Lng2, Lat2]) dlon=lng2-lng1 dlat=lat2-lat1 A =sin (DLAT/2) **2 + cos (LAT1) * cos (LAT2) * sin (DLON/2) **2 dis=2*asin (sqrt (a)) *6371*1000 return Dis
Python gets latitude and longitude based on address