如何使用 Python Selenium 在用户名字段中发送文本

How to send text within the Username field using Python Selenium

我一直在观看 youtube 视频,但似乎无法使用“class 方法使以下内容正常工作”。

from selenium import webdriver 
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

options = Options() options.add_experimental_option("detach", True)
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)
driver.get("https://sharemydata.pge.com/#login")
driver.find_element_by_class_name('input-username').send_keys('david@gmail.com')

https://www.youtube.com/watch?v=rj5zfP3ktgE 我看过这个人的 yt 页面,但他的方法 class name 似乎对我不起作用。我似乎只能打开页面。

我也试过了,

driver.find_element_by_xpath("//input[@type='email']").send_keys("david@gmail.com")

发送字符序列用户名字段website you need to induce WebDriverWait for the and you can use either of the following :

  • 使用CSS_SELECTOR:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input[type='email']"))).send_keys("david@gmail.com")
    
  • 使用 XPATH:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[@type='email']"))).send_keys("david@gmail.com")
    
  • 注意:您必须添加以下导入:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC