youtube-iframe-api - YouTube IFrame API:获取视频描述
问题描述
我需要直接从用户的浏览器中获取视频描述(不是标题),API 提供的唯一合法方法是调用player.getVideoData()
,但它不包含它。
我尝试使用无证调用,https://www.youtube.com/get_video_info?video_id={video_id}
但它被 CORS 阻止。
我还发现 API v3视频/列表调用看起来像
https://www.googleapis.com/youtube/v3/videos?key=YOUR_API_KEY&part=snippet&id=VIDEO_ID
但据我所知,它是为了服务器到服务器的调用,我不想把我的 API 密钥放在这里。
从我用谷歌搜索的内容来看,它看起来像以前player.getVideoData()
返回的description
但现在它似乎坏了。
那么有什么方法可以直接从浏览器获取描述吗?
解决方案
您可以尝试使用document.querySelector
- 阅读描述,例如:
document.querySelector("#description > yt-formatted-string").innerText
NB 这querySelector
对我有用,即使 YouTube 网站在他的 URL 参数中有disable_polymer=1
1或没有。
或者
document.querySelector("#eow-description").innerText
注意:最后一个querySelector
对我有用的旧设计。我建议您使用第一个选项,但querySelector
以防万一。
1添加disable_polymer=1
URL 作为加载 YouTube旧设计的参数。
推荐阅读
- reporting-services - SSRS 格式数字分隔符
- javascript - 如何制作圆形页面?(当滚动到页面内容的末尾时,页面将内容的开头添加到底部等等)
- python - Firestore 错误消息:运算符字符串“in”无效
- python - 无法在 NSE 中抓取表格数据
- virtualbox - Surface Laptop 3 BIOS 中缺少 VT-x 选项
- javascript - 如何在按钮中包含的 onClick 中添加表单中包含的操作和方法。我正在使用 Reactjs
- python - 打开文件并计算一个单词在文件中出现的次数
- php - PHP - 抓取谷歌群组页面
- regex - 具有相同起始位置的相同长度正则表达式替代方案的决胜局
- arrays - 如何合并for循环产生的重复条目