我正在尝试找出一种使用 Javascript 提取任何网站上媒体文件链接的方法。我正在使用 Unity3D,但它与使用 uWebkit 有关,它是一个 Web 浏览器插件,这个 Web 浏览器插件允许我将 Javascript 注入(inject)到网站中,所以这(希望)能够解决。
目的是返回我希望脚本找到的所有媒体链接的 URL 列表(*.mp3、*.ogg、*.mp4、*.pdf 等),然后我可以单击打开这些链接在一个单独的窗口中,在自定义视频播放器/音乐播放器/pdf 阅读器等中仅包含该文件。我意识到并非所有网站都将这些内容公开,我将为这些内容制定解决方法。
我在此处、搜索引擎和 GitHub 上搜索了相关脚本或文档,但没有成功。
PS:jQuery 也很好。
最佳答案
根据 Caleb 的答案,我只是使用数据结构来存储您要检查的文件类型来优化它的性能。
var extensions = {};
extensions["mp3"]=true;
extensions["mp4"]=true;
extensions["pdf"]=true;
/* etc */
var extPattern = /\.([0-9a-z]+)(?:[\?#]|$)/i;
var links = [];
$('a').each(function(){
var href = $(this).attr('href');
if (typeof href !== 'undefined') {
var ext = href.match(extPattern)
if(ext!= null && ext.length >1) {
if(extensions[ext] != undefined) {
links.push(href);
}
}
}
});
关于javascript - 使用带有 Javascript 的数组检测媒体文件并返回所有网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36702197/