我想从任何网站上的嵌入式视频中获取实际的视频文件网址。它本质上不是 YouTube。它可以是任何网站。我正在为 Java 上的 android 编码。
例如:我想做的事情和这个 IDM 按钮一样:
[实际上不一样,因为那里的按钮在播放器启动时会捕获网络流。但我想直接从播放器那里获取文件。] 有没有办法做到这一点?任何外部库 [例如 Jsoup] 都可以这样做吗?
我已经在使用 Jsoup 来获取页面的其他内容,但我不知道该怎么做。
如果您使用 jsoup,您可以很容易地获取 url。只需使用 jsoup 选择所有可能的视频标签(<iframe>
、<videos>
、<embed>
等)。然后获取src
属性并将其存储在您想要的位置:
例子
//Standard Jsoup search
Elements iframes = body.select("iframe");
/*Gets the src of all the iframes or other tag, and if you have
multiple videos you might have to do this in a for loop.*/
String videoURL = iframes.attr("src");
您可能知道不同的网站有不同的视频下载策略,有些可能会在 html 文件中给出一个真实的 url 直接下载,有些可能只是在单击按钮或触摸屏时返回视频流。
虽然视频下载有这么多不同的策略,但你真的很难找到一种通用的方法来获取一个真实的 url 来开始下载任务。但是这里我有个想法,不是很聪明,可能很笨:
1.在后台播放视频(让浏览器在浏览器缓存中下载该视频)。
2.找到那个缓存文件并提取你想要的视频文件。
对于我自己来说,我通常有一些我想要但不能直接下载的视频,因此我会使用 IE 播放该视频并在 IE 临时文件夹中找到该视频。希望我能帮助你!