1.爬虫简介
网页爬取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地。 请求网站并提取数据的自动化程序
2.爬取网页的基础知识-HTTP协议
1.HTTP协议简介 超文本传输协议是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。 HTTP的发展是由蒂姆·伯纳斯-李于1989年在欧洲核子研究组织(CERN)所发起。1999年6月公布的 RFC
2616,定义了HTTP协议中现今广泛使用的一个版本——HTTP 1.1。
2014年12月,互联网工程任务组(IETF)将HTTP/2标准提议递交至IESG进行讨论,于2015年2月17日被批准。
HTTP/2标准于2015年5月以RFC 7540正式发表,取代HTTP 1.1成为HTTP的实现标准。
2.HTTP工作过程 (1)客户端与服务器建立连接。 (2)服务器接到请求后,给予相应的响应信息。
(3)客户端接收服务器所返回的信息,浏览器解析并显示网页。
3.爬虫过程
发送请求 通过HTTP库向目标站点发起请求,即发送一个Request,请求可以包含额外的headers等信息,等待服务器响应。
获取响应内容 如果服务器能正常响应,会得到一个Response,获得的页面内容有Html,Json字符串,二进制数据(如图片,视频等)
解析内容 得到的内容可能是HTML,可以用正则表达式、网页解析库进行解析。可能是Json,可以直接转为Json对象解析,可能是二进制数据,可以做保存或者进一步的处理。
保存数据 保存形式多样,可以存为文本,也可以保存至数据库,或者保存特定格式的文件。
4.HTTP请求方法
HTTP1.0 定义了三种请求方法: GET, POST 和 HEAD方法。 HTTP1.1
新增了六种请求方法:OPTIONS、PUT、PATCH、DELETE、TRACE 和 CONNECT 方法。
5.HTTP状态码
所有HTTP响应的第一行都是状态行,依次是当前HTTP版本号,3位数字组成的状态代码,以及描述状态的短语,彼此由空格分隔
6.URL和网页结构
URL是Uniform Resource Locator的缩写,即统一资源定位系统,也就是网址。 URL
遵守一种标准的语法,它由协议、主机名、域名、端口、路径、以及文件名这六个部分构成
1.网页一般由三部分组成,分别是 HTML(超文本标记语言)、CSS(层叠样式表)和 JScript(活动脚本语言)。
2.HTML是整个网页的结构,相当于整个网站的框架。带“<”、“>”符号的都是属于 HTML 的标签,并且标签都是成对出现的。
3.每一个网站都有一个名为 robots.txt 的文档,当然也有部分网站没有设定 robo