出现403的返回结果
主要是有些服务器为了防止访问量过大,承受服务器的压力,或者是拒绝你的访问。服务器接收到这个信息,理应返回了这个403的信息

在前一块的代码中解决了
Python:爬取数据出现response.status_code为418解决方法

如果还出现了403的访问错误
可以通过如下解决

1. 原理

服务器拒绝访问,可以通过给服务器 登录 ,获取当前的cookie来得到网址的信任。得以爬取该网址的信息

在head头中加入cookie的信息
具体怎么查找该cookie的信息,可以通过登录你要搜寻的网址,点击F12进行查看cookie信息即可

【疑惑】:使用 python 的requests库发起get或post请求返回 403 代码错误,使用postman发起请求发现状态码竟然成功了。首先排除ip问题,ip有问题的话postman也访问不了。难道是headers 出现 了问题吗,通过对比发现也不是headers的问题。【解疑】:其实遇到这种情况大概率是遇到了“原生模拟浏览器 TLS/JA3 指纹的验证”,浏览器和postman都有自带指纹验证,而唯独requests库没有。这就让反爬有了区分人为和 爬虫 的突破口。2、使用 pyhttpx 库。 目前 爬虫 主要可以从:小程序、H5、App 三个端口采集,每个端口都有相应的限制 每个端口都有 403 限制,主要研究在小程序和H5侧的研究,为避免 403 ,需要随机user-agent、代理ip、滑块验证、对应的token/shumeiId/sk频繁更换,token为小程序端用户token,shumeiId在小程序和H5端都有,为数 前后端对接时测试一直 403 ,后端接口swagger测试也都正常,最后还是跨域的问题,吐了,虽然前后端都加过跨域处理…最后分享一下成功 解决 方法 ,新加了一个类 @Component public class CorsFilter implements Filter { private final static Logger logger = LoggerFactory.getLogger(CorsFilter.class); public void doFilter(ServletRequ 比如canvas这个图片网站, import requests weburl = "https://www.canva.cn/_ajax/marketplace2/media/MADVhltOAvg?version=1&qualities=PRINT" webheader = { 'referer': 'https://www.canva.com/', 'Accept': 'text/html, application/xhtml+xml, 一、什么是HTTP ERROR 403 403 Forbidden 是HTTP协议中的一个状态码( Status Code )。可以简单的理解为没有权限访问此站,服务器受到请求但拒绝提供服务。二、HTTP 403 状态码解释大全 403 .1 -执行访问禁止。 403 .2 -读访问禁止。 403 .3 -写访问禁止。 403 .4要求SSL。 403 .5 - 128要求SSL。 403 .6 - IP地址被拒绝。 403 .7... 使用requests包建立访问时,正常的访问状态会返回状态代码200,但是在爬一些网站时,经常会返回 403 (众所周知的404代表的是网站disappear了。而 403 代表我们当前的IP被forbidden了)。这是因为在短时间内直接使用Get获取大量 数据 ,会被服务器认为在对它进行攻击,所以拒绝我们的请求,自动把电脑IP封了。 因此,这里介绍两种 解决 办法。 方案一、请求页面的是添加headers 我们平时使用浏览器下载的图片或者是文 1 string result = ""; 2 HttpWebRequest httpRequest = (HttpWebRequest)HttpWebRequest.Create(strUrl); 3 HttpWeb Response respone = (HttpWeb 在 python 报错之后,定位c:之前的那个语句基本上就是出错的地方。 1.urllib.error.HTTPError: HTTP Error 403 : Forbidden 这个问题是由于网站的反爬机制,如果用 urllib.request.urlopen 方式打开一个URL,服务器端只会收到一个单