AttributeError: 'WebDriver' object has no attribute 'find_element_by_xpath'
时间: 2023-06-22 19:44:56 浏览: 936
这个错误提示说明你在 `WebDriver` 对象上调用了 `find_element_by_xpath` 方法,但是这个方法是 `WebElement` 对象的方法,`WebDriver` 对象并没有这个方法。
可能的原因是你没有先创建 `WebElement` 对象,直接在 `WebDriver` 对象上调用了 `find_element_by_xpath` 方法。正确的用法应该是先找到要操作的元素,然后在该元素上调用 `find_element_by_xpath` 方法。
例如,如果要找到页面上的一个输入框元素,并且该元素的 `id` 属性为 `input-box`,应该先使用 `WebDriver` 对象找到该元素,然后再在该元素上调用 `find_element_by_xpath` 方法,例如:
```python
from selenium import webdriver
# 创建 WebDriver 对象
driver = webdriver.Chrome()
# 打开网页
driver.get("https://www.example.com")
# 找到输入框元素
input_element = driver.find_element_by_id("input-box")
# 在输入框中输入内容
input_element.send_keys("Hello World!")
```
需要注意的是,`find_element_by_id` 方法是根据元素的 `id` 属性来查找元素的。如果要根据其他属性来查找元素,可以使用其他的 `find_element_by_*` 方法,例如 `find_element_by_name`、`find_element_by_class_name`、`find_element_by_css_selector` 等等。
阅读全文