Python + 高德地图 API:一键批量采集商家信息(名称/地址/电话/图片),自动导出 CSV

张开发
2026/4/10 11:33:38 15 分钟阅读

分享文章

Python + 高德地图 API:一键批量采集商家信息(名称/地址/电话/图片),自动导出 CSV
一、背景最近需要做一个本地生活商家的市场调研手动在高德地图上翻页复制太慢了。于是用 Python 写了一个小工具调用高德地图开放平台的地点搜索 API输入城市和关键词就能自动采集商家信息并保存为 CSV 文件。实测采集数据很稳定分享出来供有类似需求的同学参考。二、效果截图图1GUI 输入界面图2采集结果 CSV 文件预览三、核心功能支持指定城市、关键词、采集数量默认50可自定义自动分页获取数据每页20条直到满足数量提取字段商家名称、地址、联系电话、门店图片URL自动生成时间戳字段创建时间、修改时间结果保存为 UTF-8 编码的 CSVExcel 可直接打开四、技术实现4.1 依赖库requests# 调用高德APIpandas# 数据处理与导出tkinter# GUI界面可选4.2 高德 API 说明使用接口https://restapi.amap.com/v3/place/text参数city城市名keywords搜索关键词page/offset分页控制key高德 Web API 密钥4.3 部分代码片段defrun_main_gui():主界面逻辑globalcity_entry,keyword_entry,limit_entry,key_entry,account_var roottk.Tk()root.title(MyAgent 高德地图数据采集模块)root.geometry(400x450)tk.Label(root,text账号选择:).pack()account_vartk.StringVar(value账号1)tk.OptionMenu(root,account_var,账号1,账号2,账号3).pack()tk.Label(root,text城市:).pack()city_entrytk.Entry(root)city_entry.pack()tk.Label(root,text关键词:).pack()keyword_entrytk.Entry(root)keyword_entry.pack()tk.Label(root,text采集数量:).pack()limit_entrytk.Entry(root)limit_entry.insert(0,50)limit_entry.pack()tk.Label(root,text高德API Key:).pack()key_entrytk.Entry(root,show*)key_entry.pack()tk.Button(root,text开始采集,commandstart_collection,bg#4CAF50,fgwhite).pack(pady20)root.mainloop()4.4 GUI 界面我用tkinter做了一个简单的窗口方便非技术用户使用账号选择预留多账号切换输入城市、关键词、采集数量、API Key点击按钮开始采集完成后弹窗提示保存路径五、使用步骤前往高德开放平台注册账号申请 Web 服务 API Key安装 Python 环境安装依赖pip install requests pandas运行程序填写参数等待采集完成打开生成的 CSV 文件六、源码获取需要完整源码含 GUI 界面的同学可以在评论区留言或者私信我。代码已经打包成 .exe不会 Python 的也可以直接运行。如果觉得有用欢迎点赞、收藏、评论三连

更多文章