爬虫进行之前需要了解的基本知识

1、HTTP原理

  • url 一般的网页链接都可以成为url

  • 超文本-hypertext,在浏览器里看到的内容就是超文本解析而成的,网页源代码就是HTML

  • HTTP协议-超文本传输协议,HTTP协议是用于网络传输超文本数据到本地浏览器的传送协议,它既能保证高效而准确地传送超文本文档,但不能保证安全

  • HTTPS-是以安全为目的的HTTP传输通道,简单的讲就是HTTP的安全版,即HTTP下加入SSL层,简称HTTPS

HTTPS的安全基础是SSL,因此通过它传输的内容都是经过SSL加密的,它的主要作用可以分为两种:

  1. 建立一个信息安全通道来保证数据传输的安全
  2. 确认网站的真实性,凡是用了HTTPS的网站都可以通过电机浏览器地址栏的锁头标志来查看网站认证之后的真实信息,也可以通过CA机构颁发的安全签章来查询,但是举个列子,12306的CA证书是中国铁道部自行签发的,而这个证书是不被CA机构信任的,但是实际上它的数据传输依然是经过SSL加密的,然而Chrome浏览器依然会显示警告,如果要爬取这样的站点,就需要忽略证书的选项,否则会提示SSL链接错误。

2 请求:

  • 请求方法:
  1. 常见的请求方法有get和post两种

在浏览器里直接输入url,这就发起了一个get请求,请求的参数会直接包含到url里

post请求大多在表单提交时发起,对于登录就是post请求,表单信息包含账户和密码信息

get和post的区别

get请求的参数直接包含在url里,数据可以在url中看到,而post请求的url不会包含这些数据,数据通常以表单的形式传输,而不会体现在url中

get请求提交的数据最多只有1024个字节,而post无限制,上传文件时,由于文件的内容比较大,也会选用post方式

3 请求头

Accept:请求报头域,用于指定客户端可接受哪些类型的信息

Accept-Language:指定客户端可接受的语言类型

Accept-Encoding:指定客户端可接受的内容编码

Host:用于指定,请求资源的主机IP和端口号,其内容为请求url的原始服务器或网关的位置,从HTTP1.1版本开始,请求必须包含此内容。

Cookies:维持当前访问会话,服务器通过Cookies识别出我们自己,并且查出当前状态时登录状态,所以返回结果就是登录之后才能看到的网页内容。

Referer:此内容用来标识这个请求是哪个页面发过来的

User-Agent:可以使服务器识别客户使用的操作系统及版本、浏览器及版本信息,在做爬虫是加上此信息,可以伪装为浏览器,如果不加,很可能会被识别出为爬虫

Content-Type:互联网媒体类型,例如,text/html代表HTML格式,image/gif代表GIF图片,application/json代表JSON类型。

4 请求体

请求体一般承载的内容是POST请求中的表单数据,而对于GET请求,请求体则为空。

常见的状态码:

200 服务器成功处理了请求

301 请求的网页已永久移动到新位置,即永久重定向

403 服务器拒绝请求

404 服务器找不到请求的网页

500 服务器遇到错误,无法完成请求

 

 

你可能感兴趣的:(python爬虫)