深度学习,深度睡眠 2022-11-16 17:45 采纳率: 68.8%
浏览 15
已结题

用selenium自动操作网页时,总是提示会话过期

我用selenium操作网页自动下载时,操作两三次后,总是提示会话过期,间隔30秒左右下载一次,这个网站会话过期时间大概是3分钟,我怀疑是被检测到自动工具导致,但是手工操作也是这样,但是只查询,不下载,会话就一直不会过期,请问有什么好的解决办法吗?改设置的隐藏参数都设置了,包括执行stealth.min.js,换火狐浏览器也是这样


```python
option = webdriver.ChromeOptions()
        option.add_experimental_option('excludeSwitches', ['enable-automation'])
        option.add_experimental_option('useAutomationExtension', False)
        #option.add_argument("--headless")
        option.add_argument('window-size=1920x1080')
        option.add_argument('--start-maximized')
        option.add_argument('--disable-gpu')
        option.add_argument('blink-settings=imagesEnabled=false')
        option.page_load_strategy = 'none' #页面加载策略:normal<eager<none

        prefs = {
            #'profile.managed_default_content_settings.images': 2,  #禁用图片
            'download.prompt_for_download': False,
            'download.default_directory': self.save_path
        }

        option.add_experimental_option('prefs',prefs)
        
        browser = webdriver.Chrome(options=option)
        browser.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument', {'source': 'Object.defineProperty(navigator, "webdriver", {get: () => undefined})' })
        wait = WebDriverWait(browser,10)

        with open('stealth.min.js','r') as f:
            stealth_min = f.read()
        browser.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument', {'source': stealth_min})

```

  • 写回答

2条回答 默认 最新

  • 一二三四! 2022-11-16 18:08
    关注

    之前做爬虫的时候遇到一个好一点的方法,当时用的chrome,关闭所有浏览器窗口,cmd指定端口启动chrome,然后代码中指定该端口操作,应该可以解决这个问题

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月27日
  • 创建了问题 11月16日

悬赏问题

  • ¥200 csgo2的viewmatrix值是否还有别的获取方式
  • ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
  • ¥15 请把下列每一行代码完整地读懂并注释出来
  • ¥15 pycharm运行main文件,显示没有conda环境
  • ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件
  • ¥15 为什么eclipse不能再下载了?
  • ¥15 编辑cmake lists 明明写了project项目名,但是还是报错怎么回事
  • ¥15 关于#计算机视觉#的问题:求一份高质量桥梁多病害数据集
  • ¥15 特定网页无法访问,已排除网页问题
  • ¥50 如何将脑的图像投影到颅骨上