爬虫原理
爬虫其实是获取服务端的response的内容,根据自己的需求做解析,提取所需的信息
爬虫需要做两件事:
- 模拟计算机对服务器发送request请求
- 接受服务器端的response内容并解析,提取所需的信息
但是互联网网页错综复杂,一次的请求和回应不能够批量获取所需的信息,这就需要设计爬虫的流程,主要是多页面爬取和跨页面爬取。
多页面爬取
一台显示器显示的数据量很有限,很多请求下会做分页处理,这种情况下,需要先分析网页的URL构成特点,构造出素有页面的URL并保存起来,再循环取出URL,爬取信息:
- 手动翻页并观察各网页的URL构成,构造出所有的页面URL保存在列表中(其他的集合也可以);
- 根据URL列表,依次循环取出URL
- 定义爬虫函数
- 循环调用爬虫函数,保存爬取的数据
- 循环结束,结束爬虫程序
跨页面爬取
有些情况下,我们需要在页面中获取一个URL并访问这个URL来爬取信息,这是跨页面爬取,基本步骤如下:
- 定义爬取函数,爬取列表页的所有的子项URL,并保存
- 定义爬取子项页面函数
- 进入子项页面爬取详细信息
- 存储数据,循环完毕,结束爬虫
网页构造
要爬取网页信息,就需要知道网页的构造,Chrome浏览器可以很方便的展现出网页的构造信息,使用Chrome打开某个网页,在网页空白出,单击鼠标的右键,选择检查,有时候直接按F12也可以,就可以看到网页的构造信息,