📜  在Python中使用 GeoPy 获取给定位置的邮政编码

📅  最后修改于: 2022-05-13 01:55:13.239000             🧑  作者: Mango

在Python中使用 GeoPy 获取给定位置的邮政编码

在本文中,我们将使用 Geopy 模块编写一个Python脚本,通过使用位置获取邮政编码。geopy使Python开发人员可以轻松定位世界各地的地址、城市、国家和地标的坐标。

要安装 Geopy 模块,请在终端中运行以下命令。

pip install geopy

方法:

  • 导入 Geopy 模块
  • 初始化 Nominatim API 以从输入字符串中获取位置。
  • 使用 geolocator.geocode()函数获取位置。
  • 现在从位置实例中提取 Zip 数据。

分步实施:

第 1 步:导入模块。

Python3
# import module
from geopy.geocoders import Nominatim


Python3
# initialize Nominatim API 
geolocator = Nominatim(user_agent="geoapiExercises")


Python3
place = "Boring road patna"
location = geolocator.geocode(place)
print(location)


Python3
data = location.raw
print(data)


Python3
loc_data = data['display_name'].split()
print("Full Location")
print(loc_data)
print("Zip code : ",loc_data[-2])


Python3
# import module
from geopy.geocoders import Nominatim
  
# initialize Nominatim API 
geolocator = Nominatim(user_agent="geoapiExercises")
  
# place input by geek
place = "Boring road patna"
location = geolocator.geocode(place)
  
# traverse the data
data = location.raw
loc_data = data['display_name'].split()
print("Full Location")
print(loc_data)
print("Zip code : ",loc_data[-2])


第 2 步:创建一个 Nominatim 对象并使用 geoapiExercises 参数初始化 Nominatim API。

蟒蛇3

# initialize Nominatim API 
geolocator = Nominatim(user_agent="geoapiExercises")

第 3 步:现在使用 geocode() 获取完整地址。

蟒蛇3

place = "Boring road patna"
location = geolocator.geocode(place)
print(location)

输出:

第 4 步:现在从给定的列表中获取信息,并使用原始函数() 解析为字典。

蟒蛇3

data = location.raw
print(data)

输出:

第 5 步:现在从给定的字典中遍历邮政编码。

蟒蛇3

loc_data = data['display_name'].split()
print("Full Location")
print(loc_data)
print("Zip code : ",loc_data[-2])

输出:

全面实施:

蟒蛇3

# import module
from geopy.geocoders import Nominatim
  
# initialize Nominatim API 
geolocator = Nominatim(user_agent="geoapiExercises")
  
# place input by geek
place = "Boring road patna"
location = geolocator.geocode(place)
  
# traverse the data
data = location.raw
loc_data = data['display_name'].split()
print("Full Location")
print(loc_data)
print("Zip code : ",loc_data[-2])

输出: