无法在此URL内搜索以下标记
class="iw_component" id="c1417094965155"我可以从我的桌面chrome浏览器中查看它,但在执行以下python脚本时无法读取它
import time
from selenium import webdriver
from pyvirtualdisplay import Display
display=Display(visible=0,size=(800,800))
display.start()
driver=webdriver.Firefox()
driver.get('url')
time.sleep(5)
title=driver.page_source
print title
driver.close()
display.stop()发布于 2018-05-30 20:16:28
您可以使用类名通过find_elements_by_class_name来定位元素
divs = driver.find_elements_by_class_name("iw_component")
for div in divs: # use a descriptive variable name
html_id = div.get_attribute("id")
...此外,可以使用Explicit Waits来等待特定的元素,而不是使用time.sleep(5)来模拟/延迟python等待,直到加载完所有元素:
从selenium导入webdriver从selenium.webdriver.common.by导入通过从selenium.webdriver.support.ui导入WebDriverWait从selenium.webdriver.support导入expected_conditions as EC driver = webdriver.Firefox() driver.get("http://somedomain/url_that_delays_loading") try: element = WebDriverWait(driver,10).until( EC.presence_of_element_located((By.ID,“myDynamicElement”)最后: driver.quit()
对于您来说,定位器策略的部分将是:
presence_of_element_located((By.CLASS_NAME, "iw_component"))https://stackoverflow.com/questions/50601568
复制相似问题