494367350 2024-01-29 09:41 采纳率: 75%
浏览 13

selenium-wire库(谷歌最新版本121.0.6167.86)get方法不能访问http请求

  • 写回答

1条回答 默认 最新

  • 专家-郭老师 Java领域新星创作者 2024-01-29 09:47
    关注

    浏览器现在默认跳转的都是https。谷歌好像强制就是https访问。

    首先,这种问题可能是因为谷歌的新版本更新了它的安全策略,开始强制使用 HTTPS,所以当你试图访问一个 HTTP 网址时,浏览器自动将其重定向到 HTTPS,但由于你的服务并没有配置 HTTPS,所以就会返回 502 错误。这不是 Selenium-wire 的问题,而是浏览器的问题。
    解决这个问题的方法,就是将你的服务升级为支持 HTTPS,或者使用一个支持 HTTP 的旧版本的浏览器。如果你没有权利或者无法更改服务设置,那么你只能选择第二种方法。
    以下是在selenium中禁用https的代码示例,你可以参考一下:

    from selenium import webdriver
    
    options = webdriver.ChromeOptions()
    options.add_argument('--disable-web-security')
    options.add_argument('--allow-running-insecure-content')
    
    driver = webdriver.Chrome(chrome_options=options)
    
    driver.get('http://url:port/#/login')
    
    

    在这个代码中,我们通过添加'--disable-web-security'和'--allow-running-insecure-content'参数来禁用 Chrome 的 web 安全并允许运行非安全的内容。
    注意,这些参数可能在新版本中无法工作,因为新版本的浏览器通常有更严格的安全策略。
    如果这些方法都试过了还是无法解决问题的话,可能需要在对应的社区或者论坛寻求帮助。

    评论

报告相同问题?

问题事件

  • 修改了问题 1月29日
  • 创建了问题 1月29日

悬赏问题

  • ¥15 c#转安卓 java html
  • ¥15 os.listdir文件路径找不到
  • ¥15 使用gojs3.0,如何在nodeDataArray设置好text的位置,再go.TextBlock alignment中进行相应的改变
  • ¥15 psfusion图像融合指标很低
  • ¥15 银河麒麟linux系统如何修改/etc/hosts权限为777
  • ¥50 医院HIS系统代码、逻辑学习
  • ¥30 docker离线安装mysql报错,如何解决?
  • ¥15 构建工单的总账影响在哪里查询或修改
  • ¥15 三个简单项目写完之后有重赏之后联系我
  • ¥15 python报内存不能read错误