首先,装入requests库和beautiful soup

import requests
from bs4 import BeautifulSoup

先爬取第一页的数据,将初始url设置为搜索页的第一页:http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E

start_url = 'http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E'

然后通过chrome的检查功能,找到网页的对应的user-agent 和host,按照这个headers 来修改requests的请求头部;如果网速慢的话,就不要设置timeout参数了。

headers = {'user-agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36'
}r = requests.get(start_url, headers = headers )

通过请求,获得服务器的反馈。然后使用美丽汤,将r.text 做成汤,便于后续的数据查找;

soup = BeautifulSoup(r.text,'html.parser')

做成汤之后,使用美丽汤的find_all函数:观察原网页的html代码发现,所有店名都在h4的标签中,因此利用美丽汤的find_all函数,找到所有标签为h4的对象,获得一个返回的列表。

name_list = soup.find_all('h4')

将列表打印出来之后发现,有一些不需要的内容页在其中,因此对列表进行切片,最后获得的列表只有店铺的名称和tag。

i in name_list:print(i)
for i in name_list:print(i)#打印结果
<h4>频道:</h4>
<h4>分类:</h4>
<h4>地点:</h4>
<h4>Tomacado花厨(朝阳大悦城店)</h4>
<h4>局气(大悦城店)</h4>
<h4>马路边边串串香(朝阳大悦城店)</h4>
<h4>外婆家(朝阳大悦城店)</h4>
<h4>食久记(帝都直营店)</h4>
<h4>大渔铁板烧(朝阳大悦城店)</h4>
<h4>喜茶(朝阳大悦城店)</h4>
<h4>椒战(朝阳大悦城店)</h4>
<h4>火炉火烤肉·芝士排骨(朝阳大悦城店)</h4>
<h4>绿茶餐厅(朝阳大悦城店)</h4>
<h4>Merci French Food by TRB</h4>
<h4>胖哥俩肉蟹煲(朝阳大悦城店)</h4>
<h4>煎烤侠齐齐哈尔烤肉</h4>
<h4>蟹的岡田屋(朝阳大悦城店)</h4>
<h4>妈妈的味道(朝阳大悦城店)</h4>
<h4>商户没有被收录?</h4>
<h4>遇到什么问题?</h4>
new_name_list = name_list[3:-2]
print(new_name_list)#新的结果
[<h4>Tomacado花厨(朝阳大悦城店)</h4>, <h4>局气(大悦城店)</h4>, <h4>马路边边串串香(朝阳大悦城店)</h4>, <h4>外婆家(朝阳大悦城店)</h4>, <h4>食久记(帝都直营店)</h4>, <h4>大渔铁板烧(朝阳大悦城店)</h4>, <h4>喜茶(朝阳大悦城店)</h4>, <h4>椒战(朝阳大悦城店)</h4>, <h4>火炉火烤肉·芝士排骨(朝阳大悦城店)</h4>, <h4>绿茶餐厅(朝阳大悦城店)</h4>, <h4>Merci French Food by TRB</h4>, <h4>胖哥俩肉蟹煲(朝阳大悦城店)</h4>, <h4>煎烤侠齐齐哈尔烤肉</h4>, <h4>蟹的岡田屋(朝阳大悦城店)</h4>, <h4>妈妈的味道(朝阳大悦城店)</h4>]

成功爬取第一页之后,我们准备开始爬取之后的所有页面。在大众点评点击翻页之后,观察发现,第二页的url是在第一页的基础之上增加了/p2,第三页的是增加了/p3,以此类推,一共有22页。

比如:第二页的url:http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p2

发现了url的翻页模式之后,就可以通过循环来自动修改url,然后重复上面同样的步骤进行爬取:

url_list = []
for i in range(22):a = i + 1item = start_url + '/p' + str(a)url_list.append(item)#检查url是不是都正确
for item in url_list:print(item)#发现都获得了正确的url
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p1
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p2
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p3
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p4
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p5
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p6
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p7
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p8
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p9
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p10
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p11
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p12
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p13
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p14
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p15
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p16
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p17
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p18
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p19
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p20
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p21
http://www.dianping.com/search/keyword/2/10_%E6%9C%9D%E9%98%B3%E5%A4%A7%E6%82%A6%E5%9F%8E/p22

爬取第一页到第二十二页的店铺名称:

page = 0
for url in url_list:page = page + 1r = requests.get(url, headers = headers)soup = BeautifulSoup(r.text, 'html.parser')shop_list = soup.find_all('h4')shop_list = shop_list[3:-2]print('这是大众点评的第' + str(page) + '页') for name in shop_list:print(name)print()

输出的部分结果如下:

这是大众点评的第1页
<h4>Tomacado花厨(朝阳大悦城店)</h4>
<h4>局气(大悦城店)</h4>
<h4>马路边边串串香(朝阳大悦城店)</h4>
<h4>外婆家(朝阳大悦城店)</h4>
<h4>食久记(帝都直营店)</h4>
<h4>火炉火烤肉·芝士排骨(朝阳大悦城店)</h4>
<h4>大渔铁板烧(朝阳大悦城店)</h4>
<h4>很久以前羊肉串(石佛营店)</h4>
<h4>喜茶(朝阳大悦城店)</h4>
<h4>绿茶餐厅(朝阳大悦城店)</h4>
<h4>胖哥俩肉蟹煲(朝阳大悦城店)</h4>
<h4>蟹的岡田屋(朝阳大悦城店)</h4>
<h4>大福龙虾烧烤(青年路店)</h4>
<h4>Merci French Food by TRB</h4>
<h4>奈雪の茶(朝阳大悦城店)</h4>这是大众点评的第2页
<h4>妈妈的味道(朝阳大悦城店)</h4>
<h4>温野菜日本涮涮锅(朝阳大悦城店)</h4>
<h4>椒战(朝阳大悦城店)</h4>
<h4>很高兴遇见你(朝阳大悦城店)</h4>
<h4>撒椒(朝阳大悦城店)</h4>
<h4>食之六七·面(朝阳大悦城店)</h4>
<h4>猫小院猫主题餐厅(大悦城店)</h4>
<h4>煎烤侠齐齐哈尔烤肉</h4>
<h4>苏帮袁Sue Cuisine(朝阳大悦城店)</h4>
<h4>TIAGO SELECT(朝阳大悦城店)</h4>
<h4>KEAAMI THAI by TIAGO(朝阳大悦城店)</h4>
<h4>云海肴云南菜(朝阳大悦城店)</h4>
<h4>行运打边炉(慈云寺店)</h4>
<h4>鳗鳗的爱(朝阳大悦城店)</h4>
<h4>牛角日本烧肉(朝阳大悦城店)</h4>这是大众点评的第3页
<h4>薛蟠烤串(朝阳大悦城店)</h4>
<h4>呷哺呷哺(朝阳大悦城店)</h4>
<h4>街头烤牛肉(青年路店)</h4>
<h4>潮堂(朝阳大悦城店)</h4>
<h4>左庭右院鲜牛肉火锅(朝阳大悦城店)</h4>
<h4>麻小丨麻辣诱惑(朝阳大悦城店)</h4>
<h4>巴依老爷新疆美食(大悦城店)</h4>
<h4>伽谷蘭じゃぐら居酒屋(国美店)</h4>
<h4>蛙小侠(朝阳大悦城店)</h4>
<h4>西贝莜面村(朝阳大悦城店)</h4>
<h4>杨记兴·臭鳜鱼(朝阳大悦城店)</h4>
<h4>唐宫海鲜舫(朝阳大悦城店)</h4>
<h4>根娃子美蛙鱼头地道成都火锅(青年路店)</h4>
<h4>比格比萨(朝阳大悦城店)</h4>
<h4>度小月(朝阳大悦城店)</h4>。。。这是大众点评的第22页
<h4>辣雪吃货运营中心</h4>
<h4>鲜女米线凉皮</h4>
<h4>萝拉制果(朝阳大悦城)</h4>
<h4>DEAR-DEER</h4>
<h4>伊兰朵意大利冰淇淋(朝阳大悦城店)</h4>
<h4>苏雅汇茶坊</h4>
<h4>芸溪生态</h4>
<h4>六个苹果农产品直营店(天鹅湾店)</h4>

爬取大众点评22页餐馆名称相关推荐

  1. python爬取大众点评_Python 爬取大众点评 50 页数据,最好吃的成都火锅竟是它!...

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 胡萝卜酱 PS:如有需要Python学习资料的小伙伴可以加点击下方链 ...

  2. python爬取大众点评数据_Python 爬取大众点评 50 页数据,最好吃的成都火锅竟是它!...

    作者 | 胡萝卜酱 责编 | 伍杏玲 成都到处都是火锅店,有名的店,稍微去晚一点,排队都要排好久,没听说的店,又怕味道不好. 那么如何选择火锅店呢?最简单的肯定是在美团.大众点评上找一找啊.所以,本文 ...

  3. 反反爬虫之--爬取大众点评--店铺名称、详址、经纬度、评价人数、平均消费等信息

    every blog every motto: Let's be loyal to our ideals, let's face reality-Chegwara 前言: 知难不难! 折腾了几天爬取大 ...

  4. python爬取大众点评数据_python爬虫实例详细介绍之爬取大众点评的数据

    python 爬虫实例详细介绍之爬取大众点评的数据 一. Python作为一种语法简洁.面向对象的解释性语言,其便捷性.容易上手性受到众多程序员的青睐,基于python的包也越来越多,使得python ...

  5. python爬虫爬取大众点评店铺简介信息

    python爬虫爬取大众点评店铺简介信息 写作目的: 爬取目标 大众点评的保护机制 应对方法 还存在的问题 写作目的: 今天帮朋友一个忙,要爬取一些大众点评上的数据.结果发现大众点评的防爬机制还挺多的 ...

  6. 为了部落 来自艾泽拉斯勇士的python爬虫学习心得 爬取大众点评上的各种美食数据并进行数据分析

    为了希尔瓦娜斯 第一个爬虫程序 csgo枪械数据 先上代码 基本思想 问题1 问题2 爬取大众点评 URL分析 第一个难题 生成csv文件以及pandas库 matplotlib.pyplot库 K- ...

  7. python爬取大众点评_浅谈python爬取58同城,大众点评这两个网站

    1.爬取58同城租房网遇到的坑:我爬了一页数据被封了ip,此时的我是非常的不爽,才十几条数据就封我,于是我就想着一定得找ip代理来解决这个问题,后面就写了个ip代理去弄,另外把之前头部信息ua改成了u ...

  8. Python,requests爬虫,使用代理爬取大众点评(含爬取结果。。。在文末)

    由于在工作中,客户需要大众点评的行业数据,因此本人使用Python对大众点评网站进行了爬取,虽然在爬取之前就想好了可能会遇到的坑,但是没想要从坑中爬出来这么难.本次大众点评爬虫代码编写耗时一个月.也算 ...

  9. python爬虫实战---爬取大众点评评论

    python爬虫实战-爬取大众点评评论(加密字体) 1.首先打开一个店铺找到评论 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. 很多 ...

最新文章

  1. 5月.CN域名注册量持续上涨至1199万个 净增14万
  2. python表白源代码-python浪漫表白源码
  3. Linux下查看操作系统的位数和系统名称版本信息
  4. Oracle数据库对象----视图
  5. 面试官:注解@Component,@Service是如何被解析的?
  6. ElasticSearch集成SpringData史上最全查询教程
  7. Web 设计:实现干净代码的12条定律
  8. QT的QListWidget类的使用
  9. 如何用深度学习进行CT影像肺结节探测(附有基于Intel Extended Caffe的3D Faster RCNN代码开源)
  10. Failed to issue method call: Unit mysql.service failed to load: No such file or directory解决的方式...
  11. 昆山万象汇机器人_昆山十镇,在售新盘汇总
  12. c#读取整数空格_C ++程序声明,读取和打印动态整数数组
  13. Bookdown平台分享了哪些书籍,如何使用Bookdown分享书籍
  14. 人们为何喜欢在社交网络发布个人状态?
  15. 系统虚拟化与虚拟机的区别
  16. SVN 错误中文对照
  17. 数据抽取常见的几种模式
  18. 安装及使用RSSHub
  19. 网络和internet设置 代理 手动设置无效 | internet选项 代理设置无效无法应用 |internet选项代理修改后无法应用
  20. ssd测试软件寿命查看,SSD固态硬盘使用寿命检测方法 固态硬盘怎么测剩余寿命?...

热门文章

  1. 类模板定义中智能引用
  2. 微信小程序上传图片压缩方案
  3. linux进阶17——GDB(三):观察断点和捕捉断点
  4. html+引入svg矢量图,SVG 矢量图的加载
  5. Mac 终端连接数据库
  6. 西门子逻辑运算指令_西门子S7系列plc逻辑运算指令
  7. 我的 Java 入门项目
  8. 金蝶bos开发:设置ui界面窗体大小
  9. HI3556V200 Linux+Liteos双系统学习(2)----SDK简介
  10. 伺服电机抖动的原因?如何解决?看完你就懂了