几句废话————

百度api就是基于百度地图的开发接口,这么大的地图公司居然给开发接口真的很感激哎!

所以,言归正传。现在项目需求要把乌鲁木齐市内的所有清真寺都用矢量圈出来,然后做点统计啥的,最后做个专题图产品。

怎么把清真寺找出来?

领导的意思是你一个一个上网搜吧,这就是你的工作量。那我当然要想办法啊,边工作边学习工作才有意义嘛!

然后就发现百度api可以实现我的需求。其实可以通过python爬虫自动化实现整个流程,但是我还不会python,只能先凑合一下,通过api返回乌鲁木齐的清真寺的json查询结果,json转excel,再从excel导入arcgis。这些点和他们的性质就可以作为我圈矢量的参考啦!

——————————正文分割线————————————

先上结果,最后成功把乌鲁木齐市所有能搜到的清真寺都以点的形式导入了arcgis。

可以看到最终找到197个点,虽然还没对这些点进一步筛查,但已经很有用了。

第一步:注册称为百度开发者

参考文献一:如何获得poi点(points of interest):https://blog.csdn.net/WenWu_Both/article/details/70187605

1、申请一个百度开发者账号:http://lbsyun.baidu.com/,然后点控制台。

2.get一个ak

ak也就是一个信令,作为你可以使用百度api的密码。这个东西后面要不断地用到。点创建应用,随便起个名字,选浏览器端,白名单输入*。

至此,就拥有了一个ak。然后具体咋找poi(进行地点检索),一定要好好看官方文档:http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-placeapi

3.在行政区范围内搜索。

网上的大神们都偏向用矩形检索,因为只能返回最多400个点,但是我这个poi没有那么多,我就用行政区检索就可以了。

还碰到一个问题,我输入了行政区的外接矩形边框,但是不知道为啥搜出来的点反而比实际少?(少一半呢!)以后解决吧

针对我用的这个根据行政区划检索的办法,提供一点小小的技巧。

对于任何一个区域,都可以先做一下行政区检索,如果最后记录没超过400条,就进行这样的检索就可以。

如果记录超过400(也就是page_size=20&page_num=20)还是满记录,那就要分矩形区域进行检索了。

我的检索是这样的,比官方的必填参数多了page_size=20&page_num=0

把这个填上自己的ak,然后输入浏览器网址那里,点回车,就能看到根据限制条件找到的搜索结果啦。

http://api.map.baidu.com/place/v2/search?query=%E6%B8%85%E7%9C%9F%E5%AF%BA&region=%E4%B9%8C%E9%B2%81%E6%9C%A8%E9%BD%90&output=json&coord_type=1&page_size=20&page_num=9&ak=你的ak

对部分参数进行解释。具体解释参考百度官方:http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-placeapi

参数名 参数含义 类型 示例 是否必须
query 检索关键字。行政区划区域检索不支持多关键字检索。
如果需要按POI分类进行检索,请将分类通过query参数进行设置,如query=美食
string(45) 天安门、美食 必选
tag 检索分类偏好,与q组合进行检索,多个分类以","分隔
(POI分类),如果需要严格按分类检索,请通过query参数设置
string(50) 美食 可选
region 检索行政区划区域(增加区域内数据召回权重,如需严格限制召回数据在区域内,请搭配使用city_limit参数),可输入行政区划名或对应cityCode string(50) 北京、131 必选
city_limit 区域数据召回限制,为true时,仅召回region对应区域内数据。 string(50) true、false 可选
output 输出格式为json或者xml string(50) json或xml 可选
scope 检索结果详细程度。取值为1 或空,则返回基本信息;取值为2,返回检索POI详细信息 string(50) 1、2 可选
filter 检索过滤条件。当scope取值为2时,可以设置filter进行排序。

industry_type:行业类型,注意:设置该字段可提高检索速度和过滤精度,取值有: hotel(宾馆);cater(餐饮);life(生活娱乐) sort_name:排序字段,根据industry_type字段的值而定。 1、industry_type为hotel时,sort_name取值有: default(默认);price(价格);total_score(好评);level(星级);health_score(卫生);distance(距离排序,只有圆形区域检索有效) 2、industry_type为cater时,sort_name取值有: default(默认);taste_rating(口味);price(价格);overall_rating(好评);service_rating(服务);distance(距离排序,只有圆形区域检索有效) 3、industry_type为life时,sort_name取值有: default(默认);price(价格);overall_rating(好评);comment_num(服务);distance(距离排序,只有圆形区域检索有效)
sort_rule:排序规则:0(从高到低),1(从低到高)
price_section:价格区间
groupon:是否有团购:1(有),0(无)
discount:是否有打折:1(有),0(无)

string(50) sort_name:distance|sort_rule:1 可选
coord_type 坐标类型,1(wgs84ll即GPS经纬度),2(gcj02ll即国测局经纬度坐标),3(bd09ll即百度经纬度坐标),4(bd09mc即百度米制坐标)
注:"ll为小写LL"
坐标详细说明
int 1、2、3(默认)、4 可选
ret_coordtype 可选参数,添加后POI返回国测局经纬度坐标
坐标详细说明
string(50) gcj02ll 可选
page_size 单次召回POI数量,默认为10条记录,最大返回20条。多关键字检索时,返回的记录数为关键字个数*page_size。 int 10 可选
page_num 分页页码,默认为0,0代表第一页,1代表第二页,以此类推。

常与page_size搭配使用。

int 0、1、2 可选
ak 开发者的访问密钥,必填项。v2之前该属性为key。

申请密钥

string(50)   必选
sn 开发者的权限签名。

Sn校验说明

string(50)   可选,若开发者所用AK的校验方式为SN校验时该参数必须。
timestamp 设置sn后该值必填。 string(50)  

设置sn后该值必填。

"page_size=20"就是说每页返回20个地点,如果不设置,那就默认0。

这个记录出现以后,发现每页上只有20条,也没有翻页按钮,如何翻页呢

"page_num=0"其实是用来翻页的!想看第二页,就改成"page_size=20&page_num=1"。

然后下一篇讲一下如何把这些json结果转入excel。感兴趣的朋友移步:https://blog.csdn.net/weixin_43105618/article/details/90699543

不需要编程的方法,因为我暂时还不会编程o(╥﹏╥)o

百度api爬虫(1)从百度api中爬取地点数据相关推荐

  1. python爬虫多久能学会-不踩坑的Python爬虫:如何在一个月内学会爬取大规模数据...

    原标题:不踩坑的Python爬虫:如何在一个月内学会爬取大规模数据 Python爬虫为什么受欢迎 如果你仔细观察,就不难发现,懂爬虫.学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方 ...

  2. 爬虫系列4:Requests+Xpath 爬取动态数据

    爬虫系列4:Requests+Xpath 爬取动态数据 [抓取]:参考前文 爬虫系列1:https://www.cnblogs.com/yizhiamumu/p/9451093.html [分页]:参 ...

  3. python抓取表格数据_Python如何实现从PDF文件中爬取表格数据(代码示例)

    本篇文章给大家带来的内容是关于Python如何实现从PDF文件中爬取表格数据(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 本文将展示一个稍微不一样点的爬虫. 以往我们的 ...

  4. python 扒数据_不踩坑的Python爬虫:如何在一个月内学会爬取大规模数据

    Python爬虫为什么受欢迎 如果你仔细观察,就不难发现,懂爬虫.学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这样的编程语言提供越来越多的优秀工具,让爬虫变得 ...

  5. python爬虫教程:实例讲解Python爬取网页数据

    这篇文章给大家通过实例讲解了Python爬取网页数据的步骤以及操作过程,有兴趣的朋友跟着学习下吧. 一.利用webbrowser.open()打开一个网站: >>> import w ...

  6. 【爬虫】2.6 实践项目——爬取天气预报数据

    1. 项目简介 在中国天气网(http://www.weather.com.cn)中输入一个城市的名称,例如输入深圳,那么会转到地址http://www.weather.com.cn/weather1 ...

  7. python百度翻译爬虫_Python的学习价值,python,爬,取,百度,翻译

    # 功能: 进行爬虫项目编写 # 开发时间: 2020/10/26 10:12 import requests import json if __name__ == '__main__': #进行UA ...

  8. python爬虫学习教程,用python爬取新浪微博数据

    爬取新浪微博信息,并写入csv/txt文件,文件名为目标用户id加".csv"和".txt"的形式,同时还会下载该微博原始图片(可选). 运行环境 开发语言:p ...

  9. 爬虫-练习引导-豆办电影爬取-json数据的处理

    前面学的都是html内容的处理 本节爬的内容是json数据 豆瓣电影 想抓取什么样的类型? 选电影 https://movie.douban.com/explore#!type=movie&t ...

  10. 爬虫学习笔记(用python爬取东方财富网实验)

    参考文章以及视频:(11条消息) 爬虫实战 | 爬取东方财富网股票数据_简说Python的博客-CSDN博客.手把手教你从东方财富网上获取股票数据_哔哩哔哩_bilibili.[Python爬虫案例] ...

最新文章

  1. php表单传值哪几种方式,PHP表单传值的方式有哪些?
  2. 这就是那个feature map256 256向量
  3. 告诉你你也学不会!中台灵感 SuperCell 的管理之道!
  4. php register_shutdown_function
  5. 微软开源Reactive Extensions
  6. response.setHeader各种用法 .
  7. 数据结构——最短路径之Dijkstra算法(与最小生成树的prime算法很像,建议一起看)
  8. U(优)盘安装FreeBSD-9.0+GNOME_lite桌面
  9. (Python)时序预测的七种方法
  10. python argvparser_Python ArgumentParse的subparser用法说明
  11. 内参、外参、畸变参数三种参数与相机的标定方法与相机坐标系的理解
  12. linux 创建进程 execl,linux中进程的vfork()和execl()函数
  13. 《LeetBook》LeetCode题解(1) : Two Sum[E]——哈希Map的应用
  14. eclipse git 上传工程 提交项目到 github
  15. 2021-08-13 初识servlet
  16. 微计算机与单片机原理及应用答案,单片机原理及应用(张毅刚)完整答案[一].pdf...
  17. NI MultiSim 正版软件的下载链接
  18. IDL实现TM遥感影像直方图统计(中值、均值、方差、众数及峰度系数计算)
  19. 计算机水平测试在线模拟,计算机等级考试一级模拟试题「附答案」
  20. 计算机学院实验报告,大学计算机实验报告-EXCEL电子表格实验

热门文章

  1. Amazon DynamoDB应用—为table指定Provisioned Throughput
  2. centos 6.4 thinly-provisioned
  3. vue之menu弹出菜单效果
  4. “木兰”致歉背后的思考,为什么物联网也能用Python
  5. 怎么入门学习Java编程
  6. Sphinx 基础教程
  7. 想知道你和她在网易云喜欢的音乐的重合率?
  8. 有关51单片机串口通信点灯的问题
  9. vscode 如何快速跳出括号
  10. studio无法重命名(can not rename root module)