1 项目简介
从大众点评网收集北京市所有美发、健身类目的团购详情以及团购评论,保存为本地txt文件。
技术:Requests+BeautifulSoup
以美发为例:http://t.dianping.com/list/beijing?q=美发
爬取内容包括:
【团购详情】团购名称、原价(最高价)、团购价、销量,团购里包含的各个项目的名称、单价。
【团购评论】包括评论用户名称、评论星级、评论时间、评论内容。
2 程序结构
- 从大众点评团购页面获取所有“美发”、“健身”团购项目id的列表;
- 根据团购项目列表逐个获取每个项目的团购详情、团购评论;
- 存储数据到本地文件。
3 爬取前准备工作(以美发为例)
爬取前需要提前查看所要爬取信息的位置—是静态存储在html页面还是通过JavaScript动态生成?
查看方法
在想要爬取页面右键点击“查看网页源代码”,在源代码如果能搜索到即为静态存储在html页面,否则为通过JavaScript动态生成。
经过检查,团购项目id、团购详情静态存储在html中,团购评价为JavaScript动态生成。
3.1 获取团购项目id列表、团购详情
获取所有团购项目id列表:http://t.dianping.com/list/beijing?q=美发
获取id为“6009460”团购详情:http://t.dianping.com/deal/6009460
3.2 获取团购评价
由于团购评价信息由js动态生成,不存在源代码中,需要动态加载页面。
解决方案
- 在团购评价所在页面点击F12,依次点击Network和XHR打开如下界面;
- 向下滑动页面,直至页面全部加载出评论信息;
- 找到下图中框选的“detailDealRate?..”点击打开;