摩拜单车数据爬虫

摩拜单车数据爬虫

MobikeAgent摩拜单车(Mobike)扫描器,自动搜集全国可用的单车。支持输出CSV和KML。

白色底色为Lite版单车,红色底色为老版摩拜单车,红包为红包车,你懂的。

完整代码 下载地址:1、转发本文至朋友圈

2、关注微信公众号 datayx 然后回复 摩拜 即可获取。

依赖安装代码语言:javascript复制pip install -r requirements.txt基本使用第一步(可选):之前摩拜单车服务器对请求频率作出限制,必须使用代理服务器,躲避IP限制。不过似乎近期服务器在切换为OpenResty后不再限制请求频率。我搜集了几w个开放代理,存放在proxies.txt中,开放代理并不能保证一直有效,需要使用check_proxy.py筛选出可用的代理。服务器已经全面切换为HTTPS,能支持HTTPS的代理不多。

代码语言:javascript复制python check_proxy.py生成的good_proxies.txt中存放可用的代理服务器

第二步:使用mobike.py开始爬取数据,默认会使用good_proxies.txt中的代理,如果不需要使用代理,只要删掉good_proxies.txt,或者删除这个文件中的所有内容。

代码语言:javascript复制python mobike.py高级用法mobike.py中提供get_bikes_in_range函数可供外部调用,默认输出格式为CSV(车辆编号,类型,经度,纬度),也可以使用kml_path参数生成KML文件

代码语言:javascript复制import mobikemobike.get_bikes_in_range(116, 116.8, 39.6, 40.3, csv_path="beijing.csv") #北京六环以内的区域,可以涵盖95%以上的车mobike.get_bikes_in_range(115.7, 117.4, 39.4, 41.6, csv_path="beijing_all.csv") #地理书上的整个北京辖区,大约是六环内的7倍面积mobike.get_bikes_in_range(116, 116.8, 39.6, 40.3, kml_path="out.kml") #输出KML文件,用于在Google Earth等工具中可视化数据样例/data目录下为2017年4月采集的北京地区数据,摩拜单车在北京已经投放了超过37w辆,文件很大,压缩了一下。注意:摩拜单车返回的是火星坐标。最新的爬虫已经会自动转换成WGS84了,但是这个文件夹里的数据目前还是使用火星坐标,爬一次还是挺费时间的,以后会统一成WGS84。

TODO:增加命令行功能,把这个脚本变成一个命令行工具

虽然优化了扫描的算法,但是爬取一次全北京的单车还是需要9w+次请求,耗时40分钟左右,请不要在高峰期运行,以免给摩拜单车的服务器造成压力。

相关推荐

(松龄堂中药)茯神价格对比
完美365体育ios下载

(松龄堂中药)茯神价格对比

📅 10-27 👁️ 1491
八大财经网站 股民须知道的八个财经网站1、雪球网。入门级网站,国内做的最好的股票论坛之一。2、财联社。全网最快的7*24小时快讯,有大...
书的成语
365bet网址

书的成语

📅 01-10 👁️ 4091