Python Selenium:如何编辑YouTube频道下拉列表?

2024-05-16 19:37:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Selenium和Python在Youtube上做一些网页垃圾处理。在访问特定的Youtube频道后,我想将“排序方式”下拉菜单从“添加日期(最新)”切换到“添加日期(最旧)”(即从最新视频切换到最旧视频),但我在Selenium中找不到下拉菜单。有人知道如何调用下拉列表并编辑它吗

迄今为止的守则:

from selenium import webdriver
from selenium.webdriver.support.ui import Select
driver = webdriver.Chrome("chromedriver")
driver.get('https://www.youtube.com/c/familyfeud/videos')
# Insert code to find and edit the "Sort By" dropdown here

(我随机选择了家族世仇频道作为例子。)


Tags: fromimport网页列表视频排序youtubedriver
2条回答

您可以直接使用链接,而不是自动执行行为

from selenium import webdriver

driver = webdriver.Chrome("chromedriver")
url = "https://www.youtube.com/c/familyfeud/videos"
sorted_by_oldest = url + "?sort=da"
driver.get(sorted_by_oldest)

sort=da按最早的排序
sort=dd按最新的排序

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

driver = webdriver.Chrome("chromedriver")
driver.get('https://www.youtube.com/c/familyfeud/videos')

WebDriverWait(driver,5).until(EC.element_to_be_clickable((By.XPATH,'//*[@id="sort-menu"]/yt-sort-filter-sub-menu-renderer/yt-dropdown-menu'))).click()
WebDriverWait(driver,5).until(EC.element_to_be_clickable((By.XPATH,'//*[@id="menu"]/a[2]/tp-yt-paper-item'))).click()

如果你觉得这个答案有用,请接受

相关问题 更多 >