循环查找Python元素
我正在尝试循环遍历一页上重复多次的容器,并在span标记内打印时间:循环查找Python元素,python,selenium,Python,Selenium,我正在尝试循环遍历一页上重复多次的容器,并在span标记内打印时间: <div testid="Item-Content"> <div></div> <div> <div> <div></div> <div> <div> <span>5:00pm</span>
<div testid="Item-Content">
<div></div>
<div>
<div>
<div></div>
<div>
<div>
<span>5:00pm</span>
</div>
</div>
</div>
</div>
selenium.common.Exception.NoTouchElementException出现错误请尝试下面的代码。它应该打印值
Order =driver.find_elements_by_xpath("//div[@testid='Item-Content']")
for times in Order:
print(times.find_element_by_xpath("//span").text)
或者您也可以使用WebdriverWait来处理相同的问题
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
Order=WebDriverWait(driver,30).until(EC.visibility_of_all_elements_located((By.XPATH,"//div[@testid='Item-Content']")))
for times in Order:
print(times.find_element_by_xpath("//span").text)
尝试下面的代码。它应该打印值
Order =driver.find_elements_by_xpath("//div[@testid='Item-Content']")
for times in Order:
print(times.find_element_by_xpath("//span").text)
或者您也可以使用WebdriverWait来处理相同的问题
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
Order=WebDriverWait(driver,30).until(EC.visibility_of_all_elements_located((By.XPATH,"//div[@testid='Item-Content']")))
for times in Order:
print(times.find_element_by_xpath("//span").text)
谢谢昆都克。当我运行这两个程序时,它只是连续打印了几行空白。根据你的div标签,它正在打印值。我可以得到你的完整html吗?要在评论中发送它将非常困难。有很多嵌套的div和动态类和id。你的url是公共的吗?谢谢KunduK。当我运行这两个程序时,它只是连续打印了几行空白。根据你的div标签,它正在打印值。我可以得到你的完整html吗?要在评论中发送它将非常困难。有很多嵌套的div和动态类和id。你的url是公共的吗?其他时候的结构都是一样的吗?我的意思是所有那些div和span。其他时间的结构都是一样的吗?我指的是所有的div和span。