这是我参与「第四届青训营」笔记创作活动的第8天。
1获取网页
爬虫首先要做的工作就是获取网页,就是获取网页的源代码。源代码里包含网页的部分有用信息,只要把源代码获取下来,就可以从中提取想要的信息。
最关键的部分就是构造一个请求并发送给服务器,然后接收到响应并将其解析出来。可以利用Python的urllib、requests操作。
2提取信息
由于网页的结构有一定的规则,所以还有一些根据网页节点属性、CSS选择器或XPath来提取网页信息的库,如Beautiful Soup、pyquery、lxml。使用这些库,可以高效快速地从中提取网页信息,如节点的属性、文本值等
3保存数据
提取信息后,一般会将提取到的数据保存到某处,以便后续使用。可以简单保存为TXT文本或JSON文本;也可以保存到数据库,如MySQL和MongoDB;还可保存至远程服务器,如借助SFTP进行操作。
4自动化程序
手工可以提取这些信息,但当量特别大或者想快速获取大量数据的话,就要借助程序。爬虫就是代替我们来完成这份爬取工作的自动化程序,它可以在抓取过程中进行各种异常处理、错误重试等操作,确保爬取持续高效地运行。
5能抓怎样的数据
在网页中能看到各种各样的信息,最常见的便是常规网页。它们对应着HTML代码,而最常抓取的便是HTML源代码。
有些网页返回的不是HTML代码,而是一个JSON字符串(其中API接口大多采用这样的形式)。这种格式的数据方便传输和解析,它们同样可以抓取,而且数据提取更加方便。
网页中还会看到各种二进制数据,如图片、视频和音频,利用爬虫,可以将这些二进制数据抓取下来,然后保存成对应的文件名。还有各种扩展名的文件,如CSS、JavaScript和配置文件。所有文件只要在浏览器里面可以访问到,就可以将其抓取下来
个人总结
本文介绍了爬虫的主要功能是获取网页源代码、提取网页信息,在抓取中尽可能自动化处理信息和异常。