python - 抓取 YouTube 时找不到元素

标签 python selenium web-scraping

我正在尝试从任何视频链接中抓取 YouTube 观看次数。我尝试使用 selenium 驱动程序捕获元素,但由于某种原因我无法捕获它。下面是我使用的代码:

driver=webdriver.chrome()
driver.get("https://www.youtube.com/watch?v=F-eMt3SrfFU")
driver.find_element_by_id("count").text
driver.find_element_by_id("watch-view-count").text

我无法捕获此链接上的元素。我在这里做错了什么吗? 这是一个 YouTube 电影链接,我想获取该链接的 View

最佳答案

在 get() 元素之后可能会出现无法立即可用的情况。您可以像下面的示例一样使用等待。

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


driver=webdriver.chrome()
driver.get("https://www.youtube.com/watch?v=F-eMt3SrfFU")
element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "count"))) # 10 seconds implicit wait
print element.text 

关于python - 抓取 YouTube 时找不到元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47087229/

相关文章:

python - 如何在 python 中制作屏幕录像机?

python - 操作系统错误: [Errrno 22] Invalid Argument - having problem with a username of "\robk\' in file path

selenium - 如何使用 Java 在 Selenium Webdriver 中使用 clickandwait?

javascript - 如何使用不变的 URL 抓取多个页面 - Python 3

python - 如何获取 Span 标签之间的文本 XPATH Python

python - 基本 django-rest-framework : how to get started writing a view?

python - 在两次打印输出中检查文本文件更新结果

python - Selenium:如何禁用 firefox 和 python 的图像加载?

python - 获取Shopee电商网站产品名称的工作相对xpath

python - Selenium 打印元素的空innerHTML/innerText