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

作者:程序员启航 时间:2022-02-03 14:26:23 

一、分析数据源

这里的数据源是指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爬虫实战之爬取携程评论

来源:https://blog.csdn.net/aaahtml/article/details/117325495

标签:Python,爬取,携程评论
0
投稿

猜你喜欢

  • 在TensorFlow中屏蔽warning的方式

    2023-05-08 10:54:19
  • python使用PIL和matplotlib获取图片像素点并合并解析

    2021-09-07 15:41:45
  • python实现apahce网站日志分析示例

    2023-03-28 23:51:08
  • Python内存管理实例分析

    2021-06-13 01:39:21
  • 巧用MySQL InnoDB引擎锁机制解决死锁问题

    2008-12-19 17:24:00
  • 提一个懒人需求——找遥控器的电视

    2009-03-23 18:16:00
  • Python程序设计入门(2)变量类型简介

    2021-09-28 14:51:18
  • 用Python遍历C盘dll文件的方法

    2023-04-27 20:15:27
  • 特别推荐:Web开发常用速查手册大全(100+)

    2011-05-06 12:44:00
  • 兼容所有浏览器的设为首页与显示小策略

    2009-01-12 18:50:00
  • 技巧/诀窍:在ASP.NET中重写URL

    2007-09-23 12:21:00
  • MySql表、字段、库的字符集修改及查看方法

    2024-01-19 19:39:38
  • Python生成器实现简单"生产者消费者"模型代码实例

    2022-06-30 02:36:03
  • PHP队列用法实例

    2023-10-20 12:30:49
  • Python设计模式中的状态模式你了解吗

    2023-07-14 08:20:28
  • 高并发状态下Replace Into造成的死锁问题解决

    2024-01-17 10:17:37
  • go micro微服务proto开发安装及使用规则

    2024-03-19 14:40:13
  • 如何使用Docker恢复Mysql8备份的Data数据

    2024-01-14 20:07:04
  • Python深度学习之使用Albumentations对图像做增强

    2023-11-24 06:18:23
  • JavaScript面向对象中的封装和继承你了解吗

    2024-06-07 16:00:16
  • asp之家 网络编程 m.aspxhome.com