hello,大家好,我是wangzirui32,最近笔者的文章总访问突破1万了,这一路来感谢大家的支持,谢谢!这也是我的第60篇原创博文,希望你能认真的学习完它。
开始学习吧!

1. 百度API接口

1.1 注册或登录账户

百度地图提供了一系列API接口,供开发者使用。
首先,你需要去https://passport.baidu.com/v2/?reg注册一个账户,如果你已经有了一个账户,可以点击https://passport.baidu.com/v2/进行登录。
然后,你需要输入开发者资料,就可以创建自己的应用了!

1.2 创建自己的应用

访问http://lbsyun.baidu.com/apiconsole/key#/home(必须登录),然后点击“创建应用”红色按钮,设置应用名称为“我的应用”(也可以自己命名),开启所有基础服务,如果你并不想对IP做出限制,就可以在“IP白名单”中输入“0.0.0.0/0”即可,如图:
点击“提交”,即可创建应用,如图:(这里展示的是博主之前注册的应用)

每个应用都有AK,这类似于密钥,只要拥有密钥,即可访问应用。

2. 编写Python代码

2.1 爬取API代码

from requests import get
from json import loads, dumpparams = {"q": "餐厅",   # 查询的建筑"region": "北京",   # 查询的城市"output": "json",   # 规定输出格式 可以为json或xml"page_size": "20",  # 设置返回20条信息"ak": "你的AK"   # 填入你的AK
}# 百度API接口网址
url = "http://api.map.baidu.com/place/v2/search"reponse = get(url, params=params) # 开始请求APIdata = loads(reponse.text)["results"] # 获取返回的数据# 存储数据
with open("data.json", 'w') as f:dump(data, f)print("已经存储了", len(data), "条json数据!")

运行代码,目录下创建了一个json文件,里面为北京市的餐厅数据。

2.2 解析代码数据

先来看data.json文件中的一段json数据:

{"name":"眉州东坡酒楼(国奥村店)", # 餐厅名称"location":{ # 经纬度"lat":40.014776,"lng":116.387952},"address":"北京市朝阳区林萃东路国奥中心A座1楼", # 具体地址"province":"北京市","city":"北京市","area":"朝阳区","street_id":"d51b117f32042f082ad7ab17","telephone":"(010)57393280,(010)57393286,(010)57393281", # 热线电话"detail":1,"uid":"d51b117f32042f082ad7ab17"
}

根据这些,编写分析代码:

from json import load# 读取数据
with open("data.json", "r") as f:data = load(f)# 遍历数据
for i in data:name = i['name'] # 获取餐厅名称location = i['location'] # 经纬度获取lat = location['lat'] # 纬度lng = location['lng'] # 经度address = i['address'] # 地址telephone = i['telephone'] # 热线# 打印结果print("餐厅名称:", name)print("餐厅经度:", lng, ",纬度:", lat)print("地址:", address)print("热线电话:", telephone)print(20 * "-") # 20个-为数据分隔

运行代码,输出:(这里展示2项)

餐厅名称: 眉州东坡酒楼(国奥村店)
餐厅经度: 116.387952 ,纬度: 40.014776
地址: 北京市朝阳区林萃东路国奥中心A座1楼
热线电话: (010)57393280,(010)57393286,(010)57393281
--------------------
餐厅名称: 潇湘府(上地店)
餐厅经度: 116.308366 ,纬度: 40.049949
地址: 北京市海淀区东北旺路2号
热线电话: (010)82897458,(010)82897358
--------------------

好了,编写完毕!


今天的课程就到这里,这节课可能有亿点长,不过还是希望你能学习到其中的精髓!拜拜!

Python网络爬虫:某度地图API获取城市餐厅数据 并提取内容展示结果相关推荐

  1. Python网络爬虫,pyautogui与pytesseract抓取新浪微博数据,OCR

    Python网络爬虫,pyautogui与pytesseract抓取新浪微博数据,OCR方案 用ocr与pyautogui,以及webbrowser实现功能:设计爬虫抓取新浪微博数据,比如,抓取微博用 ...

  2. 爬虫实践:通过百度地图API获取省份公园数据

    目标 通过百度地图Web服务API获取中国所有城市的公园数据,并且获取每一个公园具体的评分.描述等详情,最终将数据存储到MySQL数据库中. 实践准备 百度地图Place API的地址为 http:/ ...

  3. Python 网络爬虫实战:猫眼电影 38950 条评论数据告诉你《无名之辈》是否值得一看?

    11月16日,一部无流量明星.无大制作.无大IP的"三无"国产电影<无名之辈>上映后,竟然连续打败了超级英雄"毒液".会魔法的"神奇动物& ...

  4. python爬虫 + 百度地图api 获取城市的实时路况信息

    ​ 前言:本文写作的初衷是笔者参与了一个道路实况图的制作项目中,本人负责路况数据的抓取,本来是想要用高德地图的api来进行数据的抓取,但是很不巧的是 - 高德地图的路况查询api服务已经不能用了,于是 ...

  5. python读取csv文件坐标地图描点_python3 通过百度地图API获取城市POI点并存于CSV格式...

    原文信息: 作者:WenWu_Both 出处:http://blog.csdn.net/wenwu_both/article/ 版权:本文版权归作者和CSDN博客共有 转载:欢迎转载,但未经作者同意, ...

  6. python 接入百度地图数据包下载_Python爬虫-利用百度地图API接口爬取数据并保存至MySQL数据库...

    首先,我这里有一份相关城市以及该城市的公园数量的txt文件: 分析-02.png 其次,利用百度地图API提供的接口爬取城市公园的相关信息. 所利用的API接口有两个: 1.http://api.ma ...

  7. python写爬虫之提取网页的内容(筛选)_Python网络爬虫项目:使用requests获取网页,通过BeautifulSoup提取数据...

    本次讲解通过requests获取某一个网站,网址:http://www.gxccedu.com/sp2017/zli/index.html 然后使用正则表达式提取页面中的"专利名称" ...

  8. python3 通过百度地图API获取城市POI点并存于CSV格式

    原文信息: 作者:WenWu_Both  出处:http://blog.csdn.net/wenwu_both/article/  版权:本文版权归作者和CSDN博客共有  转载:欢迎转载,但未经作者 ...

  9. python网络爬虫学习笔记(十一):Ajax数据爬取

    文章目录 1.基本介绍 2.基本原理 3.实战 有时候我们在用requests抓取页面的时候,得到的结果可能和在浏览器中看到的不一样:在浏览器中可以看到正常显示的页面数据,但是使用requests得到 ...

最新文章

  1. 知识产权基础(上、下)
  2. 【错误记录】Android Studio 编译报错 ( Could not find com.android.tools.build:gradle:4.2.1. )
  3. javascript中的this
  4. GPU:nvidia-smi的简介、安装、使用方法之详细攻略
  5. Kaggle入门五大步,跟着做就对了
  6. nashorn js 调用 java_从nashorn(JDK 8 JavaScript引擎)调用char []输入参数调用Java函数?...
  7. C++经典问题:如果对象A中有对象成员B,对象B没有默认构造函数,那么对象A必须在初始化列表中初始化对象B?
  8. 300. 最长上升子序列
  9. 高压断路器故障诊断的相关方法
  10. 哈维玛德学院 计算机,这些美国大学名气不高,却有最顶级的工程专业
  11. 波卡跨链交易协议RAI Finance将接入Bounce Finance实现IDO代币发行
  12. centos6下安装php7的memcached扩展
  13. 和包支付的钱哪里来_老瓦发问国际乒联:道理我都懂!问题钱从哪里来?
  14. 卡密激活php代码,全自动PHP授权检测系统,卡密功能自助授权功能源码
  15. Rust中iter()和into_iter()的区别
  16. JAVA毕设项目微博系统网站(java+VUE+Mybatis+Maven+Mysql)
  17. Java实验——分别统计字符串中出现的大写字母、小写字母个数,以及出现的数字字符以及其他字符的个数
  18. 机器学习技术:使用深度学习处理文本
  19. win 2008 R2远程桌面授权
  20. 05吸收应用:会整理还不够?教你吸收、联想、输出、应用

热门文章

  1. 除了吃鸡还能玩什么?2018值得你期待的手游大排行!必看必看!!
  2. lpl比赛js是什么梗
  3. Solidworks2022学习版 设置中文
  4. 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java基于java的仓储信息管理系统o9ypl
  5. php如何设置小数后一位,PHP问题:PHP如何保留小数点后一位,并且不四舍五入
  6. 读书笔记(四)--富爸爸,穷爸爸
  7. (生活处处是商机)很牛的赚钱创业新点子,你也想到这些了吗?
  8. 2.1 jmeter及其插件的安装
  9. 红米3S解锁_解账号锁刷机包_(2016033-2016036-2016035)线刷包
  10. AxureRP 设置图片文字,旋转,尺寸,等待,其他,触发