当我运行代码并以无头模式执行时,收到消息" 401-未经授权:尚未应用该请求,因为它缺少目标资源的有效身份验证凭据。"。
但是在正常模式下执行完全相同的步骤,则该网页允许我执行所有操作。
对比其他网站使用无头模式没问题,初步猜测是由于网站认证机制导致,想深入检查原因以及解决方案
尝试过设置webdriver属性为undefined和设置user-agent
关于python 3:使用Selenium的无头Chrome-401未经授权的访问
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 编程漫步者 2023-03-03 14:37关注
根据您的描述,问题可能与Selenium的默认用户代理有关,因为该用户代理可能会被目标网站拦截并阻止访问。
您可以尝试使用自定义用户代理来解决此问题,这可以通过在创建WebDriver实例时设置Options来实现。例如:from selenium import webdriver from selenium.webdriver.chrome.options import Options options = Options() options.add_argument('--headless') options.add_argument('user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36') driver = webdriver.Chrome(options=options)
其中,user-agent是您想要使用的自定义用户代理字符串。您可以使用浏览器的开发者工具来获取用户代理字符串,或者使用其他可用的字符串。
如果这个方法不能解决问题,那么您需要进一步检查目标网站的身份验证机制,以了解为什么它在无头模式下无法正常工作。
解决 无用评论 打赏 举报
悬赏问题
- ¥15 想问一下这种情况怎么解决呢(关键词-file)
- ¥15 python Flassk 模块部署 服务器时报错
- ¥15 Opencv(C++)异常
- ¥15 VScode上配置C语言环境
- ¥15 汇编语言没有主程序吗?
- ¥15 这个函数为什么会爆内存
- ¥15 无法装系统,grub成了顽固拦路虎
- ¥15 matlab有关债券凸性久期的代码
- ¥15 lvgl v8.2定时器提前到来
- ¥15 qtcp 发送数据时偶尔会遇到发送数据失败?用的MSVC编译器(标签-qt|关键词-tcp)