【发布时间】:2018-10-15 18:21:46
【问题描述】:
我想制作一个应用程序,通过输入某个关键字进行搜索,该程序会自动播放 youtube 上搜索结果中的第一个视频。如何获取搜索结果的第一个视频的链接?
【问题讨论】:
标签: youtube youtube-api python-3.5
我想制作一个应用程序,通过输入某个关键字进行搜索,该程序会自动播放 youtube 上搜索结果中的第一个视频。如何获取搜索结果的第一个视频的链接?
【问题讨论】:
标签: youtube youtube-api python-3.5
此代码用于在您提供给应用的搜索结果中打印第一个视频的链接。示例:- 运行应用程序 .. 输入 hello it me .. 然后它会变魔术。
import urllib.request
import urllib.parse
import re
import webbrowser as wb
query_string = urllib.parse.urlencode({"search_query" : input()})
html_content = urllib.request.urlopen("http://www.youtube.com/results?"+query_string)
search_results = re.findall(r'href=\"\/watch\?v=(.{11})', html_content.read().decode())
print("http://www.youtube.com/watch?v=" + search_results[0])
wb.open_new("http://www.youtube.com/watch?v={}".format(search_results[0]))
【讨论】:
我已更新the answer from Ali.M.Kamel。
import urllib.request
import urllib.parse
import re
import webbrowser as wb
query_string = urllib.parse.urlencode({"search_query" : input()})
html_content = urllib.request.urlopen("https://www.youtube.com.hk/results?"+query_string)
search_results = re.findall(r'url\"\:\"\/watch\?v\=(.*?(?=\"))', html_content.read().decode())
if search_results:
print("http://www.youtube.com/watch?v=" + search_results[0])
wb.open_new("http://www.youtube.com/watch?v={}".format(search_results[0]))
【讨论】: