尝试使用Scrapy抓取youtube,但没有数据[已关闭]

avkwfej4  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(183)

已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题吗?**通过editing this post添加详细信息并阐明问题。

四个月前关门了。
Improve this question
所以我正在学习scrapy,并希望从youtube频道获得数据
例如https://www.youtube.com/c/JohnWatsonRooney
因此,我打开shell并获取它,例如,我想获得订阅者计数,我使用响应。xpath('//*[@id=“subscriber-count”]')我尝试了css选择器和许多其他东西,似乎没有任何工作帮助!

i2byvkas

i2byvkas1#

URL是完全动态的,这就是为什么你不能提取数据。你必须使用一个自动化工具,比如selenium或API(Youtube提供API)。因为你想现在就获取订阅计数。所以我用selenium作为例子

import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))

URL = 'https://www.youtube.com/c/JohnWatsonRooney'
driver.get(URL)
time.sleep(3)

subcriber_count=driver.find_element(By.XPATH,'//*[@id="subscriber-count"]').text
print(subcriber_count)

输出:

连接到系统的设备无法正常工作。(0x1F)

26.5K subscribers

相关问题