在 python 中获取 youtube 视频 link
Get youtube video link in python
我需要确保我在控制台中输入了一个词,并且应该为我显示一个 link 到视频,例如,如果我在控制台中输入 Linkin Park 这个词,它应该给我一个 link 这个请求的第一个视频。在我的示例中,第一个 link 是 Numb [官方音乐视频] - Linkin Park
我该怎么做?
这将解决您的查询。
def search_video(self,query):
search_query = query.split()
url = "http://www.youtube.com/results?search_query="
for word in search_query:
url += word + "+"
time.sleep(1)
webbrowser.open_new(url[:-1])
#-1 is used here, because in the URL we have an added + at the end.
更新:您可以使用 Selenium
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.implicitly_wait(5)
search_query = input().split()
print(search_query)
for word in search_query:
final_query += word + "+"
driver.get('https://www.youtube.com/results?search_query={}'.format(final_query))
select = driver.find_element(By.CSS_SELECTOR, 'div#contents ytd-item-section-renderer>div#contents a#thumbnail')
link += [select.get_attribute('href')]
print(link)
我需要确保我在控制台中输入了一个词,并且应该为我显示一个 link 到视频,例如,如果我在控制台中输入 Linkin Park 这个词,它应该给我一个 link 这个请求的第一个视频。在我的示例中,第一个 link 是 Numb [官方音乐视频] - Linkin Park
我该怎么做?
这将解决您的查询。
def search_video(self,query):
search_query = query.split()
url = "http://www.youtube.com/results?search_query="
for word in search_query:
url += word + "+"
time.sleep(1)
webbrowser.open_new(url[:-1])
#-1 is used here, because in the URL we have an added + at the end.
更新:您可以使用 Selenium
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.implicitly_wait(5)
search_query = input().split()
print(search_query)
for word in search_query:
final_query += word + "+"
driver.get('https://www.youtube.com/results?search_query={}'.format(final_query))
select = driver.find_element(By.CSS_SELECTOR, 'div#contents ytd-item-section-renderer>div#contents a#thumbnail')
link += [select.get_attribute('href')]
print(link)