我想要的是:能够提取 selenium 在 youtube 搜索结果页面上产生的每个视频的所有视图。例如:如果我在 youtube 上搜索“来自 Imagine Dragons 的信徒”,它应该会给我所有结果视频的观看次数(例如 - 104M 观看次数、1.5B 观看次数、698M 观看次数等)最多可以说前 20 个视频。我试过的from selenium import webdriverdriver=webdriver.Chrome(executable_path='C:\\ProgramData\\chocolatey\\bin\\chromedriver.exe')search = 'Believer from Imagine Dragons'driver.get("https://www.youtube.com/results?search_query=" + search)main = driver.find_elements_by_id("metadata")for datas in main: info = datas.find_elements_by_id("metadata-line") for views in info: view_counts = views.find_element_by_xpath("""//*[@id="metadata-line"]/span[1]""") print('view_counts: ' + str(view_counts.text))这个的输出:view_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M viewsview_counts: 104M views我也尝试过from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECdriver=webdriver.Chrome(executable_path='C:\\ProgramData\\chocolatey\\bin\\chromedriver.exe')search = 'Believer from Imagine Dragons'driver.get("https://www.youtube.com/results?search_query=" + search)main = WebDriverWait(driver, 10).until( EC.presence_of_element_located((By.ID, "metadata")))data = main.find_elements_by_id("metadata-line")for datas in data: views = datas.find_element_by_xpath("""//*[@id="metadata-line"]/span[1]""") print(views.text)这个的输出:104M views但是,他们都没有给我我想要的。请帮忙。未来目标(如果你能帮忙的话):能够播放该页面上观看次数最多的视频。
添加回答
举报
0/150
提交
取消