从 youtube 网址检索 JSON
Retrieving a JSON from a youtube URL
我一直在寻找一种不使用API即可获得YouTube视频时长的方法。检查他们的HTML源代码,我看到有一个名为ytplayer.config的javascript var(JSON包含有关视频的信息)。如何让该 JSON 在脚本中解析?
谢谢
编辑。这是变量
ytplayer.config = {
"assets": {
"js": "'/'/s.ytimg.com'/yts'/jsbin'/player-es_MX-vfl0Fpy-X'/base.js",
"css": "'/'/s.ytimg.com'/yts'/cssbin'/www-player-2x-webp-vflCn1Mkc.css"
},
...
...
"args": {
"vm": "CAEQAA",
"cl": "115273808",
"iv_invideo_url": "https:'/'/www.youtube.com'/annotations_invideo?cap_hist=1'u0026video_id=tRY6WtFVtVY",
"tmi": "1",
"no_get_video_log": "1",
"host_language": "es-419",
"keywords": "Jorge,Lanata,TN,periodismo",
"author": "Tribuna de Periodistas",
...
"length_seconds": "130",
...
}
};
你离得很近。您可以通过两种方式执行此操作:
使用配置对象:
ytplayer.config.args.length_seconds
它以秒为单位提供视频时间,然后您可以除以 60 以获得以分钟为单位的时间
第二种方式,USing jquery:
$('.ytp-time-duration').innerHTML
上面的解决方案可以在客户端使用,如果您正在寻找服务器端解决方案,请告诉我
用户输入 URL 后,将 URL 发送到您的服务器.. 使用任何后端语言,我习惯于 python,因此告诉您。
import urllib
link = "https:<youtube url>"
f = urllib.urlopen(link)
myfile = f.read()
myfile拥有所有的HTML内容,你可以使用任何解析器来获取的值
YTP-时间段
希望对您有所帮助。
相关文章:
- 可以't使用Angular解析/检索JSON
- 在AngularJS中使用$http.get检索JSON时出现错误400
- 在 ajax 成功和循环 json 数组时检索 json 数组
- 检索JSON数据并使用AJAX在表中显示
- gmaps4rails:如何从控制器中检索json值
- 在不知道名称的情况下检索json元素
- JSon挑战:如何在JqxGrid中检索JSon编码的值
- AngularJS基于日期检索JSON记录
- Angular JS:根据 id 检索 json 数据
- 仅使用该值检索 JSON 密钥
- 无法在 JavaScript 中检索 JSON 值
- 使用 Ember Data 检索 json 文件
- jQuery ajax 无法检索 json
- 如何从PHP文件中检索JSON数据
- 使用 jquery ajax 跨域检索 json 数据
- 从 youtube 网址检索 JSON
- 如何使用 JavaScript 检索 JSON 对象数组值
- JQuery AJAX-如何从URL检索JSON数据
- 使用 .getJSON 从 php 文件中检索 JSON 数据
- 正在检索Json字符串的一部分