我正在使用Selenium和Python在Youtube上做一些網路抓取作業。在進入一個特定的Youtube頻道后,我想把 "排序 "下拉選單從 "添加日期(最新)"切換到 "添加日期(最舊)"(即從最新的視頻在上面到最舊的視頻在上面),但我在Selenium中找到下拉選單時遇到了困難。有誰知道如何呼叫下拉選單并對其進行編輯?
目前的代碼:
from selenium import webdriver
from selenium.webdriver.support.ui import Select
driver = webdriver.Chrome("chromedriver"/span>)
driver.get('https://www.youtube.com/c/familyfeud/videos')
# Insert code to find and edit the "Sort By" dropdown here
(我隨機選擇了《家有兒女》頻道作為例子。)
uj5u.com熱心網友回復:
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"/span>)
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'/span>)) .click()
如果你覺得這個答案有用,請接受它。
uj5u.com熱心網友回復:
你可以直接使用鏈接,而不是自動化行為。
from selenium import webdriver
driver = webdriver.Chrome("chromedriver"/span>)
url = "https://www.youtube.com/c/familyfeud/videos"/span>
sorted_by_oldest = url "?sort=da"/span>
driver.get(sorted_by_oldest)
sort=da按最古老的排序。
sort=dd按最新的排序。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/318367.html
標籤:
下一篇:ChromeOptions的addArguments(java.lang.String...arguments)方法出現了錯誤。
