Python爬取附近餐馆信息代码示例


Posted in Python onDecember 09, 2017

本代码主要实现抓取大众点评网中关村附近的餐馆有哪些,具体如下:

import urllib.request 
import re 

def fetchFood(url): 
  # 模拟使用浏览器浏览大众点评的方式浏览大众点评 
  headers = {'User-Agent', 
        'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36'} 
  opener = urllib.request.build_opener() 
  opener.addheaders = [headers] 
  data = opener.open(url).read() 
  data = data.decode('utf') 
   print('================================抓取的页面数据=======================================') 
  print(data)   # 打印抓取的页面 
   print('================================获取的餐馆信息====================================') 
  foodNameSet = set(re.compile(r'<img title="(.*?)"', re.DOTALL).findall(data)) 
  number = 0 
  for i in foodNameSet: 
    number = number + 1 
    print("第%d个餐馆: %s" % (number, i)) 
foodUrl = "http://www.dianping.com/search/category/2/10/r1488" 
fetchFood(foodUrl)

输出结果:

"D:\ProgramFiles\python\python.exe"D:/zhangzh/program/MyGitHub/python3-webapp-demo/www/dzdp.py 
================================抓取的页面数据======================================= 
<!DOCTYPEhtml> 
<html> 
<head> 
<metacharset="UTF-8"/> 
<metahttp-equiv="X-UA-Compatible"content="IE=edge"/> 
<script>(function(n){vare;e="//catdot.dianping.com/broker-service/api/js",n.onerror=function(n,o,r){vari=encodeURIComponent,t=+newDate();(newImage).src=e+"?error="+i(n)+"&file="+i(o)+"&line="+i(r)+"×tamp="+t}})(window);</script> 
<title>北京中关村美食-大众点评网</title> 
......此处省略 
<liclass=""> 
<divclass="pic"> 
<atarget="_blank"href="/shop/33562041" rel="external nofollow" rel="external nofollow" rel="external nofollow" title=""> 
<imgtitle="渝是乎(中关村店)"alt="渝是乎(中关村店)"data-src="http://p0.meituan.net/ugcpic/023ff4be1a239be5b7f13ac328bc6c5d%40249w_249h_0e_1l%7Cwatermark%3D1%26%26r%3D1%26p%3D9%26x%3D2%26y%3D2%26relative%3D1%26o%3D20"/> 
</a> 
</div> 
<divclass="txt"> 
<divclass="tit"> 
<aonclick="document.hippo.ext({cl_i:10,query_id:'4ab097b5-d3b6-441b-a684-8b58c0704567'}).mv('cl_to_s',33562041); 
"data-hippo-type="shop"title="渝是乎(中关村店)"target="_blank"href="/shop/33562041" rel="external nofollow" rel="external nofollow" rel="external nofollow" > 
<h4>渝是乎(中关村店)</h4> 
</a> 
<divclass="promo-icon"> 
<atarget="_blank"href="/shop/33562041#waimai" rel="external nofollow"  
class="iout"title="本店支持在线下单,足不出户,外送到家!"></a> 
</div> 
<atarget="_blank"href="/search/branch/2/0_33562041/g0" rel="external nofollow"  
module="list-branch" 
class="shop-branch">分店</a> 
</div> 
<divclass="comment"> 
<spanclass="sml-rank-starssml-str50"title="五星商户"></span> 
<ahref="/shop/33562041#comment" rel="external nofollow" class="review-num"target="_blank"module="list-readreview" 
> 
<b>1536</b> 
条点评</a> 
<emclass="sep">|</em> 
<ahref="/shop/33562041" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="mean-price"target="_blank"> 
人均 
<b>¥42</b> 
</span> 
</a> 
</div> 
<divclass="tag-addr"> 
<ahref="/search/category/2/10/g102" rel="external nofollow" ><spanclass="tag">川菜</span></a> 
<emclass="sep">|</em> 
<ahref="/search/category/2/0/r1488" rel="external nofollow" ><spanclass="tag">中关村</span></a> 
<spanclass="addr">榆树林1号</span> 
</div> 
<spanclass="comment-list"> 
<span>口味<b>9.1</b></span> 
<span>环境<b>8.7</b></span> 
<span>服务<b>8.3</b></span> 
</span> 
</div> 
<divclass="svr-info"> 
......此处省略 
</script> 
</body></html> 
================================获取的餐馆信息==================================== 
第1个餐馆:重八牛府(之初入江湖店) 
第2个餐馆:纽约客美式餐厅(新中关店) 
第3个餐馆:Chatuchak加都加曼谷潮流甜品 
第4个餐馆:新净雅烹小鲜 
第5个餐馆:那家小馆(中关村店) 
第6个餐馆:谷得一 
第7个餐馆:唐廊.朴禅(当代商城店) 
第8个餐馆:小福楼餐厅 
第9个餐馆:食宝街 
第10个餐馆:渝是乎(中关村店) 
第11个餐馆:品咖啡 
第12个餐馆:小吊梨汤(融科店) 
第13个餐馆:鱼八斗老麻水煮鱼(酸菜鱼) 
第14个餐馆:鳗鳗的爱(新中关购物中心店) 
第15个餐馆:速度牛排 
Processfinishedwithexitcode0

总结

以上就是本文关于Python爬取附近餐馆信息代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Python操作MongoDB数据库PyMongo库使用方法
Apr 27 Python
详解Python中的Cookie模块使用
Jul 06 Python
深入理解python多进程编程
Jun 12 Python
人工智能最火编程语言 Python大战Java!
Nov 13 Python
python GUI实例学习
Nov 21 Python
python实现识别手写数字 python图像识别算法
Mar 23 Python
学生信息管理系统Python面向对象版
Jan 30 Python
解决ROC曲线画出来只有一个点的问题
Feb 28 Python
解决python使用list()时总是报错的问题
May 05 Python
Python web如何在IIS发布应用过程解析
May 27 Python
python Selenium 库的使用技巧
Oct 16 Python
Python超简单容易上手的画图工具库推荐
May 10 Python
Python的地形三维可视化Matplotlib和gdal使用实例
Dec 09 #Python
python登录并爬取淘宝信息代码示例
Dec 09 #Python
Python实现读取txt文件并画三维图简单代码示例
Dec 09 #Python
Python排序搜索基本算法之选择排序实例分析
Dec 09 #Python
Python排序搜索基本算法之冒泡排序实例分析
Dec 09 #Python
Python排序搜索基本算法之希尔排序实例分析
Dec 09 #Python
Python爬取当当、京东、亚马逊图书信息代码实例
Dec 09 #Python
You might like
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
2016/09/11 PHP
Laravel框架实现定时发布任务的方法
2018/08/16 PHP
关于innerHTML后丢失动态绑定的EVENT问题解决方法
2013/05/19 Javascript
15条JavaScript最佳实践小结
2013/08/09 Javascript
jquery序列化表单去除指定元素示例代码
2014/04/10 Javascript
jQuery内置的AJAX功能和JSON的使用实例
2014/07/27 Javascript
jQuery中get和post方法传值测试及注意事项
2014/08/08 Javascript
js propertychange和oninput事件
2014/09/28 Javascript
js函数内变量的作用域分析
2015/01/12 Javascript
浅谈Javascript的静态属性和原型属性
2015/05/07 Javascript
谈谈impress.js初步理解
2015/09/09 Javascript
JavaScript判断微信浏览器实例代码
2016/06/13 Javascript
一次围绕setTimeout的前端面试经验分享
2017/06/15 Javascript
新版vue-cli模板下本地开发环境使用node服务器跨域的方法
2018/04/03 Javascript
微信小程序自定义底部导航带跳转功能
2018/11/27 Javascript
详解JavaScript栈内存与堆内存
2019/04/04 Javascript
一文了解Vue中的nextTick
2019/05/06 Javascript
express框架下使用session的方法
2019/07/31 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
2020/03/17 Javascript
python从入门到精通(DAY 2)
2015/12/20 Python
python学习之matplotlib绘制散点图实例
2017/12/09 Python
机器学习经典算法-logistic回归代码详解
2017/12/22 Python
Python实现九宫格式的朋友圈功能内附“马云”朋友圈
2019/05/07 Python
Python 获取windows桌面路径的5种方法小结
2019/07/15 Python
Python通用唯一标识符uuid模块使用案例
2020/09/10 Python
利用css3径向渐变做一张优惠券的示例
2018/03/22 HTML / CSS
Under Armour瑞典官方网站:美国高端运动科技品牌
2018/11/21 全球购物
美国儿童珠宝在线零售商:Loveivy
2019/05/22 全球购物
Spotahome意大利:公寓和房间出租
2020/02/21 全球购物
文明礼仪演讲稿
2014/05/12 职场文书
项目经理任命书内容
2014/06/06 职场文书
我与祖国共奋进演讲稿
2014/09/13 职场文书
婚宴父亲致辞
2015/07/27 职场文书
Python中threading库实现线程锁与释放锁
2021/05/17 Python
Win2008系统搭建DHCP服务器
2022/06/25 Servers