#python #selenium #web-scraping #video #youtube
Вопрос:
Reviews =pd.DataFrame()
k=1
controls > div.ytp-left-controls > a.ytp-next-button.ytp-button')
for i in range(10):
for l in range(k):
for j in range(k):
all_posts = driver.find_elements_by_xpath('//*[@id="container"]/h1/yt-formatted-string')
all_posts = [x.text for x in all_posts]
posts = pd.Series(all_posts)
all_views = driver.find_elements_by_xpath("//*[@class='short-view-count style-scope ytd-video-view-count-renderer']")
all_views = [x.text for x in all_views]
views = pd.Series(all_views)
all_likes = driver.find_elements_by_xpath('/html/body/ytd-app/div/ytd-page-manager/ytd-watch-flexy/div[5]/div[1]/div/div[8]/div[2]/ytd-video-primary-info-renderer/div/div/div[3]/div/ytd-menu-renderer/div/ytd-toggle-button-renderer[1]/a/yt-formatted-string')
all_likes = [x.text for x in all_likes]
likes = pd.Series(all_likes)
all_dislikes = driver.find_elements_by_xpath('/html/body/ytd-app/div/ytd-page-manager/ytd-watch-flexy/div[5]/div[1]/div/div[8]/div[2]/ytd-video-primary-info-renderer/div/div/div[3]/div/ytd-menu-renderer/div/ytd-toggle-button-renderer[2]/a/yt-formatted-string')
all_dislikes = [x.text for x in all_dislikes]
dislikes = pd.Series(all_dislikes)
all_comments = driver.find_elements_by_xpath('/html/body/ytd-app/div/ytd-page-manager/ytd-watch-flexy/div[5]/div[1]/div/ytd-comments/ytd-item-section-renderer/div[1]/ytd-comments-header-renderer/div[1]/h2/yt-formatted-string/span[1]')
all_comments = [x.text for x in all_comments]
comments = pd.Series(all_comments)
df = pd.DataFrame({"Title":posts, "Views":views, "Likes":likes, "Dislikes":dislikes, "No of Comments":comments})
Reviews = Reviews.append(df)
time.sleep(3)
next= driver.find_element_by_css_selector('#movie_player > div.ytp-chrome-bottom > div.ytp-chrome-
next.click()
time.sleep(2)
Reviews
Попытка очистить данные, такие как название видео, количество лайков и антипатий, количество комментариев, общее количество просмотров видео с конкретного канала YouTube
Поэтому я решил нажать кнопку play_all с канала, чтобы воспроизвести все видео подряд
Но кнопка следующего воспроизведения должна быть включена, чтобы воспроизводить следующее следующее видео каждый раз, когда выполняется очистка от определенного видео
Но цикл кнопки «Следующее воспроизведение» не работает каждый раз, когда цикл запускается, кнопка «Далее» YouTube не работает в этом коде кнопка «Следующее воспроизведение» обозначается ключевым словом (далее)
Я пытаюсь сделать следующее.нажмите() все работает нормально, но следующий щелчок не работает в соответствии с циклом, который должен работать, и следующий.щелчок() показывает ошибку
Комментарии:
1. Проверьте, работает ли эта строка- `next= driver.find_element_by_xpath(«//a[@title=’Следующий (SHIFT n)’]»)
2. иногда он работает с («//a[@title=’Следующий (СДВИГ n)’]»), но иногда отображается сообщение об ошибке: такого элемента нет: Не удается найти элемент: {«метод»:»xpath»,»селектор»:»//a[@title=’Следующий (СДВИГ n)’]»} (Информация о сеансе: chrome=92.0.4515.131)
3. Применить ожидания. Неявно или явно, но не то и другое вместе.
4. применил, но это не сработало
5. Ну, я устал выполнять подобные задачи. До сих пор это работало.