爬取数据时,HTTP ERROR 401解决办法

爬取网页数据时,若浏览器能浏览但按F12获取数据链接报401错误,是网站做了反爬机制。解决思路有两种:一是在请求头添加Authorization字段,此为临时方法;二是进行JS逆向,找出产生密钥的token并模拟生成,该方法非临时,多次爬取数据时适用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

爬取数据时,HTTP ERROR 401解决办法

​ 在爬取网页数据时,遇到这样一个问题:

浏览器能可以浏览的网页,按F12后,打开network,找到数据所在的链接,双击(或者将header中的Request URL复制粘贴到浏览器地址栏),发现报了401的错误。

在这里插入图片描述

​ 这个问题的原因是网站做了反爬机制。有两种解决思路。

一、添加Authorization字段

​ 在爬虫代码请求URL时,在请求头header中添加Authorization字段,从浏览器中拷贝该字段的值。

在这里插入图片描述

在这里插入图片描述

​ 注意,该方法是临时的。当重新登陆时,Authorization会重置,这时需要再次拷贝该值到代码中。

二、JS逆向

​ 这种方法需要对该网页的js代码进行分析,找出产生密钥的token,并在代码中模拟生成这个token。由于这个过程稍微有些复杂,对于不同的网站,都需要一步步去做逆向。感兴趣的小伙伴可以深入了解下。

​ 这种方法不是临时的,重新登陆后仍然有效。


​ 综上,介绍了两种解决401问题的方法。如果只是临时爬一下数据,用第一种方法更简便。如果要多次爬取数据,采用js逆向方法来解决。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值