python3网络爬虫——day2-1

爬虫的基本原理

爬虫:获取网页并提取和保存信息的自动化程序。

1、获取网页:获取网页的源代码,主要是得到响应的BODY部分;

2、提取信息:构造正则表达式或者根据网页节点属性;

3、保存数据:保存为TXT或JSON文本,也可以保存到数据库或者远程服务器;

4、自动化程序。

能抓怎样的数据:基于HTTP或HTTPS协议的,只要是这种该数据,爬虫都可以抓取。

HTTP的无状态是指HTTP协议对事物处理是没有记忆能力的,也就是说服务器不知道客户端是什么状态,缺少状态记录。

会话和Cookie是用于保持HTTP连接状态。会话在服务端,Cookie在浏览器端。

会话:会话对象用来存储特定用户会话所需的属性及配置信息。

Cookies:某些网站为了辨别用户身份、进行会话跟踪而存储在用户本地终端上的数据。

会话维持:客户端第一请求服务器,服务器会返回一个请求头中带有Set-Cookie字段的响应给客户端,用来标记是哪一个用户,客户端浏览器会把Cookies保存起来。当浏览器下一次再请求该网站时,浏览器会把Cookie放在请求头一起提交给服务器,Cookie携带了会话ID信息,服务器检查该Cookies即可找到对应的会话是什么,然后在判断会话来以此辨认用户状态。

反爬虫:

封IP:服务器会检测某个IP在单位时间内的请求次数,如果超过了这个阈值,就会直接拒绝服务,返回一些错误信息。可以使用代理伪装IP,让服务器检测不出来是我们的IP。

代理:

基本原理:代理服务器 proxy server。本机向代理服务器请求,代理服务器再向Web服务器请求。Web服务器中识别出的真实IP就不再是本机的IP。

代理分类:

1、根据协议分类:FTP HTTP等

2、根据匿名程度:

高度匿名:会将数据包原封不动地转发,记录的IP是代理服务器IP;

普通匿名:会在数据包上做一些改动,在服务端上有可能发现代理服务器,有一定几率追查到客户端的真实IP;

透明代理:改动数据包,告诉服务端,客户端的真实IP,主要是为了用缓存技术提高浏览速度。

间谍代理:组织或个人创建的用于记录用户传输的数据,然后进行研究、监控等目的的代理服务器。

猜你喜欢

转载自blog.csdn.net/weixin_41124748/article/details/82883168