如果网站上有一些动态内容,则需要等待一段时间才能检索到所需的元素。尝试下面的代码示例:
检查配置
- 您是否为
pyvirtualdisplay
likexvfb
和安装了后端xephyr
?如果不,
尝试:
sudo apt-get install xvfb xserver-xephyr
首先尝试: 添加一个简单的
time.sleep()
import timefrom pyvirtualdisplay import Displayfrom selenium import webdriverdisplay = Display(visible=0, size=(1024, 768))display.start()browser = webdriver.Firefox()actions = webdriver.ActionChains(browser)browser.get('some_url_I_need')time.sleep(5) # sleep for 5 secondscontent = browser.find_element_by_id('content') # Error on this line第二次尝试: 添加
browser.implicitly_wait(30)到您的Selenium Webdriver。
from pyvirtualdisplay import Displayfrom selenium import webdriverdisplay = Display(visible=0, size=(1024, 768))display.start()browser = webdriver.Firefox()browser.implicitly_wait(30) # secondsactions = webdriver.ActionChains(browser)browser.get('some_url_I_need')content = browser.find_element_by_id('content') # Error on this line


