在 Selenium 中查找所有可能的按钮元素 python
Finding all possible button elements in Selenium python
我正在尝试从网站获取所有按钮,但似乎 Selenium 语法已更改但文档未更新。我正在尝试从网站获取按钮,如下所示:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
url = 'https://www.programiz.com/python-programming'
driver.get(url)
buttons = driver.find_element(by=By.TAG_NAME("button"))
但是我收到以下错误:
TypeError: 'str' object is not callable
如前所述,文档仍然说要使用已折旧的 find_element_by_tag_name
。有人可以帮忙吗?谢谢
问题出在 TAG_NAME 它只是常量而不是可调用的方法,
文档的新用法应该是:
driver.find_element(By.TAG_NAME, 'button')
在此处查看文档 https://www.selenium.dev/selenium/docs/api/py/index.html#example-1
find_element_by_*
命令现在 。
要查找所有 <button>
元素,您可以使用以下 :
使用tag_name:
buttons = driver.find_elements(By.TAG_NAME, "button")
使用css_selector:
buttons = driver.find_elements(By.CSS_SELECTOR, "button")
使用 xpath:
buttons = driver.find_elements(By.XPATH, "//button")
我正在尝试从网站获取所有按钮,但似乎 Selenium 语法已更改但文档未更新。我正在尝试从网站获取按钮,如下所示:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
url = 'https://www.programiz.com/python-programming'
driver.get(url)
buttons = driver.find_element(by=By.TAG_NAME("button"))
但是我收到以下错误:
TypeError: 'str' object is not callable
如前所述,文档仍然说要使用已折旧的 find_element_by_tag_name
。有人可以帮忙吗?谢谢
问题出在 TAG_NAME 它只是常量而不是可调用的方法, 文档的新用法应该是:
driver.find_element(By.TAG_NAME, 'button')
在此处查看文档 https://www.selenium.dev/selenium/docs/api/py/index.html#example-1
find_element_by_*
命令现在
要查找所有 <button>
元素,您可以使用以下
使用tag_name:
buttons = driver.find_elements(By.TAG_NAME, "button")
使用css_selector:
buttons = driver.find_elements(By.CSS_SELECTOR, "button")
使用 xpath:
buttons = driver.find_elements(By.XPATH, "//button")