要打印文本my text
,您可以使用以下任一定位策略:
print(driver.find_element(By.CLASS_NAME, "current-stage").get_attribute("textContent"))
使用 css_selector 和 get_attribute("innerHTML")
:
print(driver.find_element(By.CSS_SELECTOR, "span.current-stage").get_attribute("innerHTML"))
使用xpath和text属性:
print(driver.find_element(By.XPATH, "//span[@class='current-stage']").text)
理想情况下,您需要使用WebDriverWait等待 visibility_of_element_located()
,您可以使用以下任一定位策略:
print(WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.CLASS_NAME, "current-stage"))).get_attribute("textContent"))
使用 CSS_SELECTOR 和 text 属性:
print(WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "span.current-stage"))).text)
使用XPATH和get_attribute("innerHTML")
:
print(WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//span[@class='current-stage']"))).get_attribute("innerHTML"))
注意:您需要添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
您可以在How to retrieve the text of a WebElement using Selenium - Python 中找到相关讨论。
参考文献
有用文档的链接: