我在从YouTube视频中提取自动字幕时遇到问题。
我尝试使用http://video.google.com/timedtext?type=track&v=3wszM2SA12E&name=Automatic&lang=en方法,但该方法只适用于那些具有命名轨道的视频。例如,这个没有任何命名的曲目(只有自动字幕),也没有加载: rrkrvAUbU9Y
有几个web应用程序可以做到这一点(如http://www.serpsite.com/youtube-subtitles-download-tool/和http://mo.dbxdb.com/),但我需要一个脚本,因为我想用它来做研究。
有没有人知道正确的方法是什么?YouTube的API有一些关于字幕的功能,但只适用于注册用户,而上面的应用程序适用于所有视频,我怀疑它们只是从页面捕获html代码(尽管这也是可能的)。一定有办法..。请帮帮我!
发布于 2017-08-14 21:25:05
您需要先调用另一个接口:http://video.google.com/timedtext?type=list&v=3wszM2SA12E
这将为您提供可用的曲目列表。在您的示例中,只能获取一个曲目:id="0" name="Automatic" lang_code="en" lang_original="English" lang_translated="English" lang_default="true"
在这个特殊的视频中,我可以通过名称name=Automatic获得曲目
https://video.google.com/timedtext?type=track&v=3wszM2SA12E&name=Automatic&lang=en
但对于另一个视频,id=工作得很好:
http://video.google.com/timedtext?type=track&v=zenMEj0cAC4&&lang=en
发布于 2018-05-25 02:18:48
以下是我花了一段时间后的建议:
- Get a list of subtitles: [http://video.google.com/timedtext?type=list&v=lT3vGaOLWqE](http://video.google.com/timedtext?type=list&v=lT3vGaOLWqE)
- Get subtitle with track id: [http://video.google.com/timedtext?type=track&v=lT3vGaOLWqE&id=0&lang=en](http://video.google.com/timedtext?type=track&v=lT3vGaOLWqE&id=0&lang=en)
快速下载:http://downsub.com/?url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3Dag_EJRhMfOM的
发布于 2015-01-30 20:15:42
一个伟大的方式去获得一个页面的数据是通过使用file_get_contents,但这只适用于,如果视频有一个'CC‘或字幕按钮,但当它这样做的时候,你可以得到所有的文本元素从xml文件不幸的文件中的一个'Youtube to caption’服务说,它需要由Youtube启用字幕,所以不幸的是,你无法获得字幕从视频没有'CC‘启用,但是,如果你仍然想你可以使用file_get_contents对xml文件,然后找到所有的’‘标签,然后将这些转换为字幕。
https://stackoverflow.com/questions/14013431
复制相似问题