用 python 抓取 etoro

Scraping etoro with python

我正在尝试使用 Selenium 自动连接到我的 etoro 帐户并从我的投资组合中获取一些数据。我在 Google Colab 工作,从现在开始,这就是我所拥有的:

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')

wd = webdriver.Chrome(options=options)
wd.get("https://www.etoro.com/fr/login")

username = "username@mail.com"
password = "password"

elementID = wd.find_element_by_css_selector("input[automation-id='login-sts-username-input']")
elementID.send_keys(username)
elementID = wd.find_element_by_id("password")
elementID.send_keys(password)

但是,我有这个错误信息

Message: no such element: Unable to locate element: {"method":"css selector","selector":"input[automation-id='login-sts-username-input']"}
  (Session info: headless chrome=91.0.4472.77)

我曾尝试更改和使用 find_element_by_class、by_xpath 等,但找不到如何操作。

你能帮我一下吗?

看看这是否有效:-

driver.find_element_by_xpath(".//input[@id='username']")

如果您不需要 运行 无头模式,删除该参数可以解决此问题。无论如何,这就是你的问题所在。

我怀疑在无头浏览器模式下我们可能会遇到某种机器人检测。如果您需要 运行 无头,也许我们可以找到解决方法。