python - “find_element_by_xpath”和“driver.find_elements(By.XPATH)”有什么区别
问题描述
我一直在使用 selenium 一段时间,这两种方法可以互换使用。
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 作为私有方法,但没有理解清楚。
解决方案
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
查找给定 By 策略和定位器的元素。可能时首选 find_element_by_* 方法。
推荐阅读
- kotlin - 如何解析这种类型的 JSON?
- ssl - 是否可以在没有代理的情况下连接到自定义端口上的安全 websocket?
- openshift - 如何为 KeyCloak 配置 OpenShift 路由器?
- java - 如何解决 java.sql.SQLException:找不到适合 jdbc:derby 的驱动程序:
- bash - 为什么 bash 的行注释技巧不适用于感叹号“!”
- multithreading - 多处理器系统中线程之间的同步如何执行,其中线程共享数据但在不同的处理器中运行
- shopware - 基于实体定义的自动生成迁移 - Shopware 6
- javascript - 如何在一个语句中为右、下和左设置边框样式
- listview - 使用主详细信息页面的导航抽屉列表视图的子菜单
- java - 如何使用不在“查询集合”中的值对 Firestore RecyclerView 项目进行排序?(社会排行榜)