【问题标题】:How to create dataframes with Google Maps geolocations?如何使用谷歌地图地理位置创建数据框?
【发布时间】:2018-04-16 13:21:42
【问题描述】:

在 Python 3 和 Pandas 中,我有一个带有地址的数据框:

import pandas as pd

consolidado = pd.read_excel('empresas_de_seguranca_consolidado_final.xlsx', converters={'cnpj': lambda x: str(x)} )

consolidado.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1226 entries, 0 to 1225
Data columns (total 25 columns):
cnpj                                1226 non-null object
CNAE_principal                      1136 non-null object
nome_empresa                        1226 non-null object
nome_empresa_maiuscula_minuscula    1001 non-null object
estado                              1001 non-null object
indicador                           1147 non-null float64
documento                           1147 non-null object
qualificacao                        1147 non-null object
socio                               1150 non-null object
socio_maiuscula_minuscula           1004 non-null object
data_abertura                       1218 non-null object
logradouro                          1155 non-null object
numero_logradouro                   1155 non-null object
complemento                         646 non-null object
cep                                 938 non-null object
bairro                              1206 non-null object
municipio                           1226 non-null object
regiao                              231 non-null object
telefone                            764 non-null object
email                               344 non-null object
situacao                            1226 non-null object
data_situacao_baixa                 434 non-null object
capital_social                      856 non-null object
cargo_relacionado_socio             190 non-null object
observacao                          327 non-null object
dtypes: float64(1), object(24)
memory usage: 239.5+ KB

完整的地址由“logradouro”(街道、大道等)、“numero_logradouro”(地点编号)、“complemento”(地址补充)、“bairro”(社区)和“municipio”(城市)列组成)

例如,地址:“R AURELIO VALPORTO, 51, LOJA A, MARECHAL HERMES, RIO DE JANEIRO”,创建链接:https://www.google.com/maps/place/R.+Aur%C3%A9lio+Valporto,+51+-+LOJA+A+-+Mal.+Hermes,+Rio+de+Janeiro+-+RJ,+21555-560/@-22.8588275,-43.3725532,17z/data=!3m1!4b1!4m5!3m4!1s0x9963aae3b2d379:0x2d6d007bdaa4b68c!8m2!3d-22.8588275!4d-43.3703592

请问,我可以访问 Google Maps API(Google Street View)发送这些完整的地址,并接收每个地址的属性和链接以及地址的更多地理位置(纬度和经度)吗?

我的目的是用这些数据创建一个数据框,如果可能的话,创建一个包含图像下载的文件夹。地址来自巴西

【问题讨论】:

    标签: python pandas google-maps google-geolocation


    【解决方案1】:

    我找到了这个解决方案:

    import googlemaps
    import google_streetview.api
    
    # Insert your key
    gmaps = googlemaps.Client(key='')
    
    # Geocoding an address
    geocode_result = gmaps.geocode('R JORGE RUDGE, 108, CASA 23, VILA ISABEL, RIO DE JANEIRO')
    
    lat = geocode_result[0]['geometry']['location']['lat']
    lng = geocode_result[0]['geometry']['location']['lng']
    
    # Define parameters for street view api
    params = [{
      'size': '600x300', # max 640x640 pixels
      'location': str(lat)+","+str(lng),
      'heading': '0;90;180;270',
      'pitch': '-0.76',
      'key': '' # insert
    }]
    
    # Create a results object
    results = google_streetview.api.results(params)
    
    # Download images to directory 'downloads'
    results.download_links('downloads')
    

    【讨论】:

      猜你喜欢
      • 2020-06-02
      • 2017-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      • 2015-07-01
      • 1970-01-01
      相关资源
      最近更新 更多