“ find_element_by_xpath”和“ driver.find_elements(By.XPATH)”的区别是什么

时间:2019-04-02 04:57:24

标签: python selenium selenium-webdriver

我已经将硒与这两种方法交替使用了一段时间。

elem = driver.find_element_by_xpath("some_xpath")
elem = driver.find_element(By.XPATH,"some_xpath")

到目前为止,它们都可以工作。我想了解两者的区别。

https://selenium-python.readthedocs.io/locating-elements.html文档将By.XPATH称为私有方法,但不清楚。

1 个答案:

答案 0 :(得分:4)

find_element_by_xpath('xpath')调用find_element(By.XPATH,'xpath'),因此实际上并没有真正的区别。

来自github

def find_element_by_xpath(self, xpath):
    return self.find_element(by=By.XPATH, value=xpath)

尽管您看到find_element()评论,但仍会建议使用find_element_by_xpath

  

查找具有“按”策略和定位器的元素。更喜欢   尽可能使用find_element_by_ *方法。