В некоторых проектах может потребоваться получить геокоординаты из набора почтовых индексов. pgeocode — это облегченная библиотека Python для высокопроизводительного автономного запроса GPS-координат, названия региона и названия муниципалитета из почтовых индексов.

Расстояния между почтовыми индексами и общие запросы расстояния также поддерживаются. Используемая база данных включает почтовые индексы 83 стран.

источник: https://pypi.org/project/pgeocode/

Позвольте мне быстро показать вам, как использовать pgeocode в одном из реальных проектов, где перед нами стоит задача получить географические координаты из подмножества почтовых индексов.

  1. Начнем с установки pgeocode.
pip install pgeocode
or
conda install -c conda-forge pgeocode

2. Затем мы импортируем ключевые библиотеки для этого небольшого проекта.

import pandas as pd
import os
import pgeocode

3. И мы импортируем наши данные в pandas DataFrame в переменную df

df = pd.read_excel('CH_Post.xlsx')
df

4. Затем мы сохраняем столбец почтовых индексов в переменную postal_codes

postal_codes = df["PLZ"].values.astype('str').tolist()
postal_codes

5. Затем мы запускаем нашу библиотеку pgeocode, указывая, что мы ищем координаты по почтовым индексам в Швейцарии (предоставляя код страны ISO).

nomi = pgeocode.Nominatim('ch')
swiss_post = nomi.query_postal_code(postal_codes)
swiss_post

6. Последний шаг — сохранить только что созданный набор данных в файл .csv.

swiss_post.to_csv('CH_Post_with_geocoord.csv')

За шесть простых шагов вы получили географические координаты из набора почтовых индексов, используя pandas и pgeocode.