为什么要设置请求头?
第一课中提到request.get(url),但是对一些网站, 爬取时会发现返回<Response [403]>。403是网站的反爬机制造成的,如果仅仅是发送web服务器一个页面请求,web服务器连你一些基本信息都不知道,这时候会被视为非正常的访问,无法爬取成功。因此需要加入headers伪装成浏览器请求访问。
请求头加入附加信息:
Accept: 客户端可以接受的数据类型(一般写*/*, 代表浏览器可以处理所有类型)
Accept-Encoding: https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers/Accept-Encoding
Accept-Language:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers/Accept-Language
Refere:告诉服务器我是从哪个页面链接过来的
Host:请求报头域主要用于指定被请求资源的Internet主机和端口号,它通常从HTTP URL中提取出来的
Connection: 客户端与服务器之间的TCP连接是否会在响应后关闭
User-Agent 是第一个可以尝试加入的头字段,即客户端软件的名称和版本号等相关信息。
在哪里找呢? F12==> Network==>点击Name中任意一个网址==》 Headers==》 request headers