一、动态页面
-
概述:在页面中执行某些动作,如翻页、点击等,页面的
url
不变,对这种类型的页面爬取。 -
原理:动态页面的数据的获取主要有两种(就我目前了解到的),
(1)网页先将数据请求放在某个<script></script>
中,分页展示;
(2)页面通过ajax
请求获取数据。
二、方法
- 如何判断是哪种?
(1)打开控制台的网络部分,:
(2)再次触发事件,比如说点击下一页,观察是否接收新的数据包
(3)出现的话就是原理的第二种方式,查看数据包的详细信息:
(4)打开请求标头的url
,访问url
就可以进入数据页面,按照常规的爬取方式爬取就行,可以根据它的响应头设置相关的参数反爬。可以根据该url的结构爬取多个事件的数据。
(5)如果(2)中没有接收到新的网络包,证明是原理(1)的方式,在页面中找到数据所在的<script></script>
标签解析即可。