吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 800|回复: 8
收起左侧

[Python 原创] 根据经纬度批量解析省份城市

[复制链接]
77Jagger 发表于 2025-4-24 18:45
前言
最近在处理经纬度的时候,想要保留指定省市的经纬度,删去多余的。经纬度太多,挨个查询太耗费时间,所以编写了这段代码。主要就是利用高德地图的API解析不同经纬度对应的省市。
新人发帖,还请大家多多关照
仅需修改代码中文件地址,高德地图API,输出文件地址即可。
注意:原始表格中要有LAN、LON字段。
处理前:
处理前.png
处理后:
处理后.png
[Python] 纯文本查看 复制代码
import requestsimport pandas as pd
import time

# 读取Excel文件
df = pd.read_excel('输入文件地址')

# 检查Excel文件中是否包含'LAT'和'LON'列
if 'LAT' not in df.columns or 'LON' not in df.columns:
    raise ValueError("Excel文件中必须包含'LAT'和'LON'列")

# 高德地图API的访问密钥
gaode_key = '高德地图API'

# 用于存储结果的列表
result_list = []

# 遍历Excel表格中的每一行
for index, row in df.iterrows():
    lat = row['LAT']
    lon = row['LON']
    location = f"{lon},{lat}"
    r = requests.get(url='https://restapi.amap.com/v3/geocode/regeo',
                     params={
                         'key': gaode_key,
                         'location': location,
                         'extensions': 'base'
                     })
    result = r.json()

    # 检查API返回结果是否包含所需信息
    if result.get('status') == '1' and result.get('regeocode'):
        address_component = result['regeocode']['addressComponent']
        province = address_component.get('province', '未知')
        city = address_component.get('city', '未知')
    else:
        province = '未知'
        city = '未知'

    result_list.append({
        '经纬度': location,
        '省份': province,
        '城市': city
    })

# 将结果转换为DataFrame
result_df = pd.DataFrame(result_list)

# 输出结果表格
print(result_df)

# 保存结果为Excel文件
result_df.to_excel('输出文件地址', index=False)

免费评分

参与人数 2吾爱币 +4 热心值 +2 收起 理由
苏紫方璇 + 3 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
joneqm + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

koberussell 发表于 2025-4-24 22:59
谢谢分享
losingstars 发表于 2025-4-24 23:10
cn2jp 发表于 2025-4-25 08:45
d199212 发表于 2025-4-25 08:59
有一点要注意下,就是经纬度的格式哦。不然也是不准的
 楼主| 77Jagger 发表于 2025-4-25 09:34
losingstars 发表于 2025-4-24 23:10
输入文件提供下不?

这个就是NOAA气象站点数据
 楼主| 77Jagger 发表于 2025-4-25 09:36
cn2jp 发表于 2025-4-25 08:45
干嘛用的这个?

面对大批量经纬度时,确定是否是所需要的,可以进行筛选
 楼主| 77Jagger 发表于 2025-4-25 09:37
d199212 发表于 2025-4-25 08:59
有一点要注意下,就是经纬度的格式哦。不然也是不准的

是的,谢谢提醒
zcming 发表于 2025-4-25 10:43
收藏了先 前两天刚查了几个经纬度
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-5-16 06:10

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表