Python爬虫实战之爬取携程评论


Posted in Python onJune 02, 2021

一、分析数据源

这里的数据源是指html网页?还是Aajx异步。对于爬虫初学者来说,可能不知道怎么判断,这里辰哥也手把手过一遍。

提示:以下操作均不需要登录(当然登录也可以)

咱们先在浏览器里面搜索携程,然后在携程里面任意搜索一个景点:长隆野生动物世界,这里就以长隆野生动物世界为例,讲解如何去爬取携程评论数据。

 Python爬虫实战之爬取携程评论

页面下方则是评论数据

 Python爬虫实战之爬取携程评论

Python爬虫实战之爬取携程评论 Python爬虫实战之爬取携程评论

从上面两张图可以看出,点击评论下一页,浏览器的链接没有变化,说明数据是Ajax异步请求。因此我们就找到了数据是异步加载过来的,这时候需要去network里面是查看数据包

二、分析数据包

在network中找到下面这个数据包

 Python爬虫实战之爬取携程评论

查看Preview里面的内容(请求返回内容)

Python爬虫实战之爬取携程评论

可以看到数据已经请求到了,下面看一下数据是否是正确的(和网页内容一致)。

 Python爬虫实战之爬取携程评论

ok,没问题之后,下面开始编写Python程序去请求数据。

1.请求地址

Python爬虫实战之爬取携程评论

可以获取到请求链接和请求方式。

Python爬虫实战之爬取携程评论

这里请求不用添加请求头header也是可以的。其中postUrl是请求链接,data_1是请求参数。

2.请求参数

在network里可以看到请求参数

Python爬虫实战之爬取携程评论

在程序中的构建如下:

Python爬虫实战之爬取携程评论

其中需要关注的是arg中的pageIndex(页数),pageSize(每页条数)。

Python爬虫实战之爬取携程评论

最终结果如下:

Python爬虫实战之爬取携程评论

该景点的评论就可以成功爬取下来了。

三、采集全部评论

上面只是采集了第一页的评论数据,通过改变arg中的pageIndex(页数),就可以遍历爬取全部的评论。

Python爬虫实战之爬取携程评论

比如这个景点一共是300页。现在把循环给加上

最终的完整代码如下:

Python爬虫实战之爬取携程评论

到此这篇关于Python爬虫实战之爬取携程评论的文章就介绍到这了,更多相关Python爬取携程评论内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python正则表达式介绍
Aug 06 Python
在Python下进行UDP网络编程的教程
Apr 29 Python
python中sys.argv参数用法实例分析
May 20 Python
Python实现批量更换指定目录下文件扩展名的方法
Sep 19 Python
将python代码和注释分离的方法
Apr 21 Python
Django实现登录随机验证码的示例代码
Jun 20 Python
Laravel+Dingo/Api 自定义响应的实现
Feb 17 Python
python脚本执行CMD命令并返回结果的例子
Aug 14 Python
手把手教你pycharm专业版安装破解教程(linux版)
Sep 26 Python
在notepad++中实现直接运行python代码
Dec 18 Python
python - asyncio异步编程
Apr 06 Python
Python之matplotlib绘制折线图
Apr 13 Python
Pytorch DataLoader shuffle验证方式
python 爬取吉首大学网站成绩单
python 批量压缩图片的脚本
Jun 02 #Python
python操作xlsx格式文件并读取
关于Numpy之repeat、tile的用法总结
Jun 02 #Python
Matlab如何实现矩阵复制扩充
Jun 02 #Python
给numpy.array增加维度的超简单方法
Jun 02 #Python
You might like
php 缩略图实现函数代码
2011/06/23 PHP
php中通过curl smtp发送邮件
2012/06/05 PHP
php在linux下检测mysql同步状态的方法
2015/01/15 PHP
php封装的数据库函数与用法示例【参考thinkPHP】
2016/11/08 PHP
js模拟实现Array的sort方法
2007/12/11 Javascript
Javascript 写的简单进度条控件
2008/01/22 Javascript
javascript标签在页面中的位置探讨
2013/04/11 Javascript
jquery foreach使用示例
2013/09/12 Javascript
javascript中的作用域和闭包详解
2016/01/13 Javascript
作为老司机使用 React 总结的 11 个经验教训
2017/04/08 Javascript
解决vue router使用 history 模式刷新后404问题
2017/07/19 Javascript
深入理解Angularjs 脏值检测
2018/10/12 Javascript
js中arguments对象的深入理解
2019/05/14 Javascript
基于jquery ajax的多文件上传进度条过程解析
2019/09/11 jQuery
vue实现弹幕功能
2019/10/25 Javascript
详解ES6 CLASS在微信小程序中的应用实例
2020/04/24 Javascript
javascript 代码是如何被压缩的示例代码
2020/05/06 Javascript
快速入手Python字符编码
2016/08/03 Python
python调用百度REST API实现语音识别
2018/08/30 Python
matplotlib.pyplot绘图显示控制方法
2019/01/15 Python
python re模块匹配贪婪和非贪婪模式详解
2020/02/11 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
Django数据结果集序列化并展示实现过程
2020/04/22 Python
keras 实现轻量级网络ShuffleNet教程
2020/06/19 Python
浅谈基于Canvas的手绘风格图形库Rough.js
2018/03/19 HTML / CSS
Melissa香港官网:MDreams
2016/07/01 全球购物
元旦晚会邀请函
2014/02/01 职场文书
辩论赛主持词
2014/03/18 职场文书
法学院毕业生求职信
2014/06/25 职场文书
会计系毕业求职信
2014/08/07 职场文书
责任书格式
2015/01/29 职场文书
2015年“世界无车日”活动方案
2015/05/06 职场文书
离婚案件上诉状
2015/05/23 职场文书
办公室日常管理制度
2015/08/04 职场文书
python 爬取吉首大学网站成绩单
2021/06/02 Python
在vue中import()语法不能传入变量的问题及解决
2022/04/01 Vue.js