【问题标题】:Having problem with the usage of driver find element by (Selenium)(Selenium)使用驱动程序查找元素时遇到问题
【发布时间】:2021-12-31 21:38:56
【问题描述】:

我正在尝试制作一个自动登录网站的机器人。 为了写下我尝试使用的用户名

driver.find_element_by_variable("username").send_keys(username)

当我从网站上查看特定变量时,该变量是两个词,例如 ma​​tinput formcontrolname。 在任何其他网站上,如果该变量是一个像 id 这样的词,我只需在 by_ 之后写 id 就可以了,在这种情况下我该怎么办?

【问题讨论】:

    标签: python selenium selenium-webdriver webdriver


    【解决方案1】:

    Selenium 不允许你使用:

    find_element_by_variable()
    

    但您必须使用By 实现中列出的预定义Locator Strategies 之一,如下所示:

    • CLASS_NAME= 类名

      driver.find_element(By.CLASS_NAME, "element_classname")
      
    • CSS_SELECTOR= css 选择器

      driver.find_element(By.CSS_SELECTOR, "element_css_selector")
      
    • ID= id

      driver.find_element(By.ID, "element_id")
      
    • LINK_TEXT= 链接文字

      driver.find_element(By.LINK_TEXT, "element_link_text")
      
    • NAME= 姓名

      driver.find_element(By.NAME, "element_name")
      
    • PARTIAL_LINK_TEXT= 部分链接文字

      driver.find_element(By.PARTIAL_LINK_TEXT, "element_partial_link_text")
      
    • TAG_NAME= 标签名称

      driver.find_element(By.TAG_NAME, "element_tag_name")
      
    • XPATH= xpath

      driver.find_element(By.XPATH, "element_xpath")
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-02
      • 1970-01-01
      • 2023-02-24
      • 1970-01-01
      • 1970-01-01
      • 2020-05-15
      相关资源
      最近更新 更多