我应该为Selenium的By.XPATH导入什么?

ohfgkhjo  于 2022-11-24  发布在  其他
关注(0)|答案(3)|浏览(125)

新版本的Selenium没有任何旧的方法,比如.find_element_by_xpath(),但是它引入了新的fabrique方法.find_element(By.XPATH, searched_string)

vegetable = driver.find_element(By.CLASS_NAME, "tomatoes")

但是它不起作用,因为'By'没有定义。我找不到使用此模式导入什么的示例。在Java中它是:

import org.openqa.selenium.By;

在Python中我应该做什么?

nkcskrwz

nkcskrwz1#

必须导入类By

from selenium.webdriver.common.by import By
ruarlubt

ruarlubt2#

from selenium.webdriver.common.by import By
h22fl7wq

h22fl7wq3#

第1001章:我的selenium.webdriver.common.by
根据By实现的文档:

class By(object):
    """
    Set of supported locator strategies.
    """

    ID = "id"
    XPATH = "xpath"
    LINK_TEXT = "link text"
    PARTIAL_LINK_TEXT = "partial link text"
    NAME = "name"
    TAG_NAME = "tag name"
    CLASS_NAME = "class name"
    CSS_SELECTOR = "css selector"

因此,当您使用**By**时,您必须汇入:

from selenium.webdriver.common.by import By

用法

  • 对于 * 类名称 *:
vegetable = driver.find_element(By.CLASS_NAME, "tomatoes")
  • 对于 XPATH
vegetable = driver.find_element(By.XPATH, "//element_xpath")

相关问题