浏览器打开某个网页返回403,可以尝试一下修改user-agent

在学习爬虫的时候,随机选择了某个网站来练习,却发现浏览器打开网页返回403(macOS Mojave 10.14.6系统,Chrome77.0.3865.90(正式版本))。尝试换了浏览器都不行,但在另一台电脑上是没有问题的。

网上查到关于解决403forbidden的不少帖子,尝试了一些都无法解决问题。后来在vscode写了几行python代码试验了一下。

url = '出现问题的网页网址'
headers= {'user-agent':'……'}
res = requests.get(url,headers=headers)
print(res.status_code)

发现如果不写headers,或者user-agent写本机的,就会返回403。但如果随便在网上搜一个常见的user-agent写进去,status_code返回的就是200。

针对以上发现,估计是因为该网站强校验某些请求头(至于为什么这样限制实在不清楚,发现这个问题,可以算得上是极个别事件。此处解决方案只适合这个特殊情况,记录一下。

在这里插入图片描述
chrome浏览器:右键“检查”——右上角按钮(三个竖排圆点)“more tools”——“Network conditions”
在这里插入图片描述User agent一项去除“select automatically”前面的勾选,然后在列表中任意选择。刷新网页就可以了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目前市面上绝大部分流行的浏览器手机版本都会带有User-Agent头信息。User-Agent是HTTP请求头的一部分,用于标识浏览器的身份和版本信息。 当使用手机浏览器下载应用程序时,浏览器会在HTTP请求的头信息中加入User-Agent字段。这个字段包含了浏览器的相关信息,比如浏览器的名称、版本、操作系统以及设备类型等。这样,服务器就可以根据User-Agent字段来判断访问者使用的浏览器和设备类型,以便返回相应的数据和页面。 例如,若使用iOS设备自带的Safari浏览器下载应用程序,User-Agent字段可能如下所示: "Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1" 这个User-Agent字段表明了用户使用的是iPhone设备,搭载iOS 12操作系统,浏览器为Safari,版本为12.0。 利用这个User-Agent信息,服务器可以根据不同的浏览器和设备类型来返回相应的下载链接或者提供适配的下载方式。手机浏览器中通过点击下载按钮,会触发浏览器检测User-Agent,然后根据该信息决定是否要跳转或显示下载链接。这样就能保证用户使用手机浏览器下载应用程序的顺利进行。 总而言之,有了User-Agent字段,手机浏览器可以根据不同的浏览器和设备类型,以及其相关信息,来提供适配的下载方式,从而更好地满足用户的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值