当前位置: 首页 > 知识库问答 >
问题:

如何自动登录到检测到我尝试使用selenium隐身登录的站点

公良高刚
2023-03-14

我想写个脚本登录https://us.etrade.com/e/t/user/login

我正在使用Selenium,但它会在启动时检测到Selenium,并生成一条消息,表示服务器拥挤,发生这种情况时,我无法登录。我也尝试过使用未检测到的硒和硒隐形,但都被检测到了。我真的需要自动化这个登录过程。我尝试过使用python请求,但这不起作用。我对任何其他技术或方法持开放态度,允许我实现自动化。请帮忙。

这是我的密码


from selenium import webdriver
from selenium.webdriver.common.by import By

from selenium_stealth import stealth
import time

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
# chrome_options.add_argument('--browser')
chrome_options.add_argument('--no-sandbox')
# chrome_options.add_argument('--disable-dev-shm-usage')
chrome_options.add_experimental_option("excludeSwitches", ["enable-automation"])
chrome_options.add_experimental_option('useAutomationExtension', False)
wd = webdriver.Chrome('chromedriver',chrome_options=chrome_options)

stealth(wd,
        languages=["en-US", "en"],
        vendor="Google Inc.",
        platform="Win32",
        webgl_vendor="Intel Inc.",
        renderer="Intel Iris OpenGL Engine",
        fix_hairline=True,
        )

wd.get("https://us.etrade.com/e/t/user/login")

共有1个答案

梁晋鹏
2023-03-14

演示文件会帮助我们更深入地挖掘您的特定用法。

然而,使用selenium隐身,我可以很容易地绕过selenium驱动的ChromeDriver启动的google chrome浏览上下文的检测。

selenium4兼容代码

>

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from selenium_stealth import stealth


options = Options()
options.add_argument("start-maximized")

# Chrome is controlled by automated test software
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
s = Service('C:\\BrowserDrivers\\chromedriver.exe')
driver = webdriver.Chrome(service=s, options=options)

# Selenium Stealth settings
stealth(driver,
      languages=["en-US", "en"],
      vendor="Google Inc.",
      platform="Win32",
      webgl_vendor="Intel Inc.",
      renderer="Intel Iris OpenGL Engine",
      fix_hairline=True,
  )

driver.get("https://bot.sannysoft.com/")
driver.save_screenshot('bot_sannysoft.png')

截图:

使用ETRADE登录页面

>

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from selenium_stealth import stealth
import time
options = Options()
options.add_argument("start-maximized")

# Chrome is controlled by automated test software
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
s = Service('C:\\BrowserDrivers\\chromedriver.exe')
driver = webdriver.Chrome(service=s, options=options)

# Selenium Stealth settings
stealth(driver,
        languages=["en-US", "en"],
        vendor="Google Inc.",
        platform="Win32",
        webgl_vendor="Intel Inc.",
        renderer="Intel Iris OpenGL Engine",
        fix_hairline=True,
        )

driver.get("https://us.etrade.com/e/t/user/login")
driver.save_screenshot('etrade_com_login.png')

截图:

 类似资料:
  • 当我尝试使用Selenium(Python)登录Chase网站时,我遇到以下错误消息: 然而,使用“人类”登录工作良好。看来,当硒找到一种元素时,就会引发问题。 我是不是漏掉了什么?我试图在stackoverflow上找到答案,但没有结果。

  • 问题内容: 我正在尝试使用Selenium来自动执行ESPN上的某些任务,由于要在访问ESPN页面时重定向到登录页面,因此我首先需要登录到我的帐户。这是登录表单: 这是我的python程序: 当我尝试查找“用户名”元素时,出现了NoSuchElementException。我尝试过在线查找。其他人建议切换框架,但是,登录表单似乎不在另一个框架中。 有任何想法吗? 问题答案: 下面的代码对我来说很好

  • 我一直在尝试使用python selenium自动登录google,但在输入用户名并单击next之后,我收到了消息 这可能是因为网页检测到chrome浏览器由测试自动化软件控制。但是我已经尝试使用以下设置代码排除该开关: 但它仍然不起作用。我用的是Chrome98。 我怎样才能解决这个问题?或者也许有另一种方法可以使用python-selenium和用户名/密码组合自动登录谷歌帐户?

  • 在本节中,将学习如何在Selenium IDE中创建登录测试用例。 出于测试目的,我们将测试考评师网 的登录页面,该网站网址如下: http://www.kaops.com/ 注意:可以在任何公开可用的网站上注册并创建登录测试。 下图显示了当点击上述URL时显示的主页的快照。 首先,注册用户以获取登录凭据。 对于此测试,我们已经生成了登录凭据(账户和密码)。 现在,生成一个测试脚本,以在Selen

  • 问题内容: 我的问题实际上与使用Python SeleniumWebdrive登录到yahoo电子邮件帐户的情况相同 但是由于Yahoo更改了登录表单用户界面,因此上述链接中提供的答案对我不起作用。相反,我尝试了以下代码。 当我运行上面的代码时,它总是为我提供密码输入页面。我逐行执行了代码,我认为密码提交后的第二次等待不起作用。 在导航到Yahoo邮箱之前,需要您的建议如何在成功登录后将其更改为重

  • 我正试着从下面的网站刮取一些信息。我是新来的,所以不完全了解正在发生的事情。我基本上是从我在互联网上找到的各种例子中获取信息,我正在使用selenium和python来帮助我导航到页面,从那里我可以刮取一些信息,我使用了下面的脚本,我可以导航到主页,关闭cookies并点击登录。此时,将弹出一个用于输入用户id和密码的弹出窗口div元素未被识别,每次我得到的错误是不存在这样的元素时,我添加了具有预