python程序实现最大限度突破高德地图爬虫限制,包括.exe文件的编译,提供最大限度爬虫高德地图poi思路

一、关于高德地图

高德是中国领先的数字地图内容、导航和位置服务解决方案提供商。高德地图产品更多的还是我们查找位置和路线的一个工具,但实际上地图能够实现的层面还有很多,甚至是将现实的商家店铺以及场所搬至虚拟的地图上,然后每个地理位置对应的是一个POI点。这样一来,地图呈现的将不再是一张标有地理位置的图片,而是一个虚拟的现实世界。POI编码表
poi编码表(更新时间2017年8月10日)

二、简述爬虫原理

这个世界上最大的网络爬虫是搜索引擎(百度、谷歌等),通过网址、关键词模糊查询等方式就可以返回一个网页或者众多的词条数据。只不过我们需要通过机器语言(python、java等)对这些数据的源码进行解析才能使其成为结构化的数据(csv、xlsx等格式),便于我们分析和处理。(如果有需要爬虫一般网页(淘宝、链家网)数据的同学,后期我会更新这方面的内容)
地图和一般的网页数据有一点区别,是因为地图和有道词典在线翻译类似,使用了一种非常简便的网页开发技术–Ajax。
高德地图中整合了众多深度POI点,这些POI点也就是高德地图搜索内容中的23个关键词类别。当我们需要在高德地图上搜索某个地点(poi)时,需要输入这个地点关键词。然后高德地图就会返回与这个关键词匹配的地点(poi),这是一种最简单的爬虫,既不能以某种格式(csv或xlsx)储存在我们的电脑中(只能在浏览器或app中查看),返回的poi数量也非常有限。
高德地图已开放地图基础服务API接口,我们可以从这个接口获取高德地图的各种数据,今天我们只对poi数据爬取进行讲解。

三、申请高德地图开发者账户

地址:https://lbs.amap.com/
一般情况下,申请成为个人开发者:填写个人信息(包括:姓名、手机、邮箱等),信息验证成功后,即可成为高德个人开发者。

四、申请key

控制台→应用管理→我的应用→创建新应用→添加key(非常简单,不赘述)基础服务API调用量

五、通过python实现高德地图poi数据的爬虫

1、查阅高德城市编码表(地址:https://lbs.amap.com/api/webservice/download)
2、找到需要的城市,复制adcode,比如北京市;
城市编码(北京)
3、代码:

import requests
import pandas as pd
import json
import time
import math

ad = input("请输入需要爬取的城市名称:")
#感谢郑允豪@Smart3S的基础代码和思路,划分城市行政区的方式,帮我们实现了突破高德地图20*45条限制。
#由于篇幅限制,下述其他城市行政区代码,读者可自行根据高德地图官方提供的城市编码进行添加。
if ad == "天津市":
	arr=['120101','120102','120103','120104''120105','120106','120110','120111','120112','120113','120114','120115','120116'
  • 9
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
高德地图是一款非常常用的地图应用程序,它提供了丰富的地理信息数据,包括POI(兴趣点)数据。然而,高德地图对于爬虫有一些限制。 首先,高德地图对于爬取其POI数据设置了一些访问频率限制。如果爬虫以非常快速的速度进行请求,高德地图的服务器可能会判定该请求为异常行为,然后返回错误信息或者封禁对应的IP地址。因此,爬虫在进行数据爬取时,需要遵循高德地图的访问频率限制,合理控制请求的速度,以避免触发这些限制。 其次,高德地图对于POI数据的爬取进行了一定的隐私保护。某些敏感数据,如用户个人信息或者商家的详细信息,高德地图可能不会提供。这是为了保护用户的隐私和商家的利益。因此,爬虫在获取高德地图上的POI数据时,需要注意遵守相关法律法规和隐私保护的原则,不应获取和使用与隐私相关的信息。 最后,高德地图有可能对外部爬虫进行技术限制高德地图的服务器可能会针对爬虫的请求进行一些技术层面的限制,如验证机制、反爬虫策略等。因此,爬虫在进行高德地图POI数据的爬取时,需要了解高德地图的相关规则,并选择适当的技术手段,以确保可以正常获取数据。 总而言之,高德地图对于爬虫POI数据进行了一些访问限制和隐私保护,爬虫需要遵守高德地图的相关规则,并合理控制访问频率,确保数据获取的合法性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值