Python Selenium有没有办法在这个文本框中获取发送文本?

2024-06-26 01:39:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试选择一个文本框来向其中输入一些数据,问题是我不知道如何获取它的元素:

这是我检查时得到的结果:

<input class=" input" maxlength="255" type="text" aria-describedby="" placeholder="" id="8624:0" data-aura-rendered-by="8628:0" data-interactive-lib-uid="28">

问题是,这基本上是为了填充表单,id、呈现者和uid编号会发生变化。 有什么我可以试试的吗


Tags: 数据textid元素inputuiddatatype
1条回答
网友
1楼 · 发布于 2024-06-26 01:39:11

要将字符序列发送到<input>元素,需要为element_to_be_clickable()诱导WebDriverWait,并且可以使用以下Locator Strategies之一:

  • 使用CSS_SELECTOR

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input.input[type='text'][data-aura-rendered-by][aria-describedby]"))).send_keys("Smece")
    
  • 使用XPATH

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[@class=' input' and @type='text'][@data-aura-rendered-by and @aria-describedby]"))).send_keys("Smece")
    
  • 注意:您必须添加以下导入:

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

相关问题 更多 >