python - 是否可以从 Youtube 搜索中抓取视频链接?
问题描述
我过去使用 Python 代码从 Youtube 检索搜索结果。我尝试再次使用相同的代码,但是 HTML 似乎是一个空骨架:
import urllib.request
from bs4 import BeautifulSoup
def url_to_video(text_to_search):
query = urllib.parse.quote(text_to_search)
url = "https://www.youtube.com/results?search_query=" + query
response = urllib.request.urlopen(url)
html = response.read()
response.close()
soup = BeautifulSoup(html, 'html.parser')
url_list = []
for vid in soup.findAll(attrs={'class': 'yt-uix-tile-link'}):
url_list.append('https://www.youtube.com' + vid['href'])
return url_list
Youtube 是否找到了阻止网络抓取的方法?有没有可行的替代方案?
解决方案
推荐阅读
- java - 将程序集合操作转换为 java 流或反应流
- r - 基于边权重和图连通性的子图提取
- c# - BindAttribute 似乎在 ASP.Net MVC Core (2.0.8) 中不起作用
- c++ - 在 C++ 程序中使用 C 库中定义的类型,具有类似方案的命名空间
- unity3d - ARCore Unity Google Cardboard 支持
- javascript - 当 centerMode 为真且无限为假时,Slick.js 删除第一张和最后一张幻灯片上的间隙
- android - Android 模拟器无法启动。屏幕只是黑色/透视
- java - Pebble 模板继承失败且没有错误
- redux - 如何在 saga 中使用 redux 操作关闭 eventSource?
- python - 根据列表中包含的排除值从 Pandas 数据框中删除值