我正在 python selenium 上自动执行一项任务,以访问我无法访问的网站。 此浏览器或应用程序可能不安全 请尝试使用其他浏览器。 作为解决方案,我使用带有代理的未检测到的 Chrome 浏览器。
当自动化启动时,我们会收到一个用于身份验证的代理警报“登录代理需要用户名和密码。您与此站点的连接不是私人的”

为了处理这个问题,我使用了库PyAutoGui。这填充了代理的用户名和密码,整个自动化成功。
问题是我想在 ubuntu 服务器上运行它,我必须使用 headless,但 pyautogui 不能在 headless chrome 上运行。它检测屏幕上打开的窗口,并将用户名和密码扔到那里(在我的例子中是 PYCHARM 的代码脚本)。因此,由于代理未通过身份验证,因为它没有获取所需的值,因此页面不会加载,并且 selenium 自动化会由于它期望在页面上出现的元素而引发错误。
File "C:\Users\username\PycharmProjects\ProjectName\venv\lib\site-packages\selenium\webdriver\support\wait.py", line 90, in until
raise TimeoutException(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message:
Stacktrace:
Run Code Online (Sandbox Code Playgroud)
我已经尝试过这些解决方案,但找不到这三个解决方案的工作原理:
我已经尝试了很多东西,主要是在未检测到的 chromedriver 问题中共享的 ,但是当涉及到无头时,所有这些解决方案都会失败
硒似乎无法通过硒警报访问!
这是我的代码(某些部分是伪的)
import pandas as pd
from imap_tools import MailBox, AND
import re
# No Headless, Proxy, undetected
from selenium.webdriver.common.by …Run Code Online (Sandbox Code Playgroud)