java安卓百度地图查找便利店_GitHub - bks233/BaiduMapPoiSpider: 使用百度地图web api接口获取中国指定行政区域内的兴趣点数据,如学校、便利店、甜品店等...

该项目是一个工具,用于采集中国指定行政区域内的兴趣点数据,如便利店、商场等。它使用百度地图Web API接口,支持批量获取多个行政区域和关键词的数据,并将结果存储到MySQL数据库中。使用者需要配置API密钥、目标区域和关键词,以及数据库连接信息。
摘要由CSDN通过智能技术生成

75a912bf5ee39e5ad33faf85507c65a5.png

中国行政区域POIS(兴趣点)采集工具

===========================================

68747470733a2f2f696d672e736869656c64732e696f2f707970692f762f72657175657374732e737667

68747470733a2f2f696d672e736869656c64732e696f2f707970692f6c2f72657175657374732e737667

68747470733a2f2f696d672e736869656c64732e696f2f707970692f707976657273696f6e732f446a616e676f2e737667

功能概述

原理

功能

获取中国境内指定行政区域内(最小可精确到街道)的指定关键词的所有兴趣点

例如可以获取一个城市内所有的便利店、商场、超市、咖啡店等兴趣点信息

组合批量获取中国境内多个行政区域内多个关键词的所有兴趣点信息

将所有采集到兴趣点数据存储到指定的mysql数据库中

获取结果示例

beijing_food_pois_examples.jpg

89433d7cbecad116f232d1b9adc90ec6.png

准备工作

1 安装 Twisted 库,需要离线安装

然后使用 pip install Twisted_xxxx版本.whl 安装

3 使用pip install requirements.txt安装依赖库

注意:前提是必须先安装Twisted库,不然安装时会报错

lxml==4.2.5

numpy==1.15.4

pandas==0.23.4

PyMySQL==0.9.2

pypinyin==0.33.2

requests==2.20.0

Scrapy==1.5.1

Shapely==1.6.4.post2

SQLAlchemy==1.2.12

yagmail==0.11.214

设置

设置文件位置: BaiduMapPoiSpider\BaiduMapWebApiSpier\settings.py

1 设置高德地图开发平台api_key

默认已经设置(但有次数限制2000/天),这个key主要用来调用行政区划边界api,2000/天其实是足够了的。

每个行政区域只调用一次。除非你一下子要获取2000个行政区域的兴趣点数据。

GaoDeMap_API_KEY = '182ad5d7061ed1e421091c22089c3677'

2 设置百度地图开发平台ak

ak_list = ['iMplFNfYyAf4e7EleegtObtcOZdliriG']

注意:这里是以个列表,你可以放置多个ak,程序会随机调用,调用前会检测ak是否有效,若无效自动使用列表中的下一个ak,直至使用完毕

3 设置需要获取的区域 列表,可以填写多个省、市、区县,也可以填写省、市、区县的代码,具体可参考高德地图开放平台:行政区划查询接口

region_name_list = ["成都市", "德阳市", '成都市武侯区']

4 设置需要获取的兴趣点关键词,同样是列表,可填写多个

query_word_list = ['超市', '咖啡馆']

5 设置mysql 存储信息

# 设置mysql 信息

MYSQL_HOST = 'localhost' # mysql ip

MYSQL_USER = 'root' # mysql用户名

MYSQL_PASSWORD = 'test123456' # mysql用户名密码

MYSQL_DBNAME = 'test' # mysql 中数据库名,必须提前创建好

MYSQL_TableName = '' # 将要写入的数据库中的表名,若不存在会自动创建,若为空,则自动以"指定的区域名_bd_map_pois"命名

6 配置ak消耗完毕时的邮件预警通知选项,这里以163邮箱为例,实际可以设置为qq邮箱、hotmail等

def send_email_163(subject, body, file):

# 配置163发送邮件的主体账户选项

yag = yagmail.SMTP(user='xugongli2012@163.com', password='', host='smtp.163.com', port='465')

body = body

# 配置接收邮件的邮箱

yag.send(to=['982749459@qq.com'], subject=subject, contents=[body, r'%s' % file])

运行

直接运行根目录下的run.py即可:python run.py

ab2d0bef78c3e4da3fe259230c308764.gif

联系我

你可以在这里找到我:夜雨微寒的个人主页

License

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值