我想从以下HTML中找到一个带有Python Selenium Chromedriver的元素:
<h4 class="destination-sitemap__sublist-title RandomVariable"></h4>
<div class="destination-sitemap__RandomContent">
<ul class="destination-sitemap_RandomSulist">
<li class="destination-sitemap_RandomItem">
h4
元素没有文本 - 但具有唯一的类。- 我需要遍历
li
项目
目前,我可以使用以下方法选择h4
元素:
elem = driver.find_element_by_class_name('destination-sitemap__sublist-title RandomVariable')
但我无法访问下层阶级的元素。
使用以下 xpath 来标识元素。
elements=WebDriverWait(driver,20).until(EC.visibility_of_all_elements_located((By.XPATH,"//h4[@class='destination-sitemap__sublist-title RandomVariable']/following::div[@class='destination-sitemap__RandomContent']/ul//li")))
for ele in elements:
print(ele.text)
你可以诱导WebDriverWait
elements=WebDriverWait(driver,20).until(EC.visibility_of_all_elements_located((By.XPATH,"//h4[@class='destination-sitemap__sublist-title RandomVariable']/following::div[@class='destination-sitemap__RandomContent']/ul//li")))
for ele in elements:
print(ele.text)
要执行WebDriverWait
需要以下导入。
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC