Selenium Find By X path Errror

时间:2017-10-23 12:51:28

标签: python selenium web selenium-webdriver web-scraping

我是Selenium的新手,我正试图刮掉YouTube,但我遇到了一个奇怪的问题。我试图抓取以下HTML:

enter image description here

这是我的代码:

a = w.find_element_by_xpath("//a[@class='yt-simple-endpoint style-scope ytd-video-renderer']")

当我在交互式shell中执行此操作时,它工作正常但是当我在保存后重新运行脚本时,它会显示一个错误,指出无法找到该元素。

1 个答案:

答案 0 :(得分:0)

似乎这是一个纯粹的同步问题。我们需要诱导WebDriverWait,即ExplicitWait将驱动程序实例与浏览器实例同步,如下所示:

a = WebDriverWait(driver, 10).until(lambda x: x.find_element_by_xpath("//a[@class='yt-simple-endpoint style-scope ytd-video-renderer' and contains(@title,'Calvin Harris - Summer')]"))