如何使用硒webdriver
来获取YouTube视频标题,我尝试使用
driver.find_element_by_xpath[//a[@title="NAME OF VIDEO"]
但它没有用。
试试这一行:
driver.find_element_by_xpath('//a[@title="NAME OF VIDEO"]')
您忘记了括号和引号。
请改用以下 xpath:
from selenium import webdriver
driver = webdriver.Firefox()
url = 'https://www.youtube.com/watch?v=m00F8gAJJJo'
driver.get(url)
xpath = '/html/body/ytd-app/div/ytd-page-manager/ytd-watch-flexy/div[3]/div[1]/div/div[5]/div[2]/ytd-video-primary-info-renderer/div/h1/yt-formatted-string'
e = driver.find_element_by_xpath(xpath)
print(e.get_attribute('innerHTML'))
如果您想从主页中提取YouTube视频
videoTitle = driver.find_element_by_xpath('//*[@id="video-title"]')
videoTitleText = videoTitle.text
否则,如果您想从视频页面中提取视频标题,那么您应该使用它
videoTitle = driver.find_element_by_xpath('//*[@id="container"]/h1/yt-formatted-string')
videoTitleText = videoTitle.text