function url2dir(strObj, dirorurl)//字符串替换指定位置字符
{
//找到起始位置:第3个‘/’的位置
var intstart = strObj.indexOf('://') + 3;
//找到结束位置: 第1个'?' 或 '#'的位置
var intend = strObj.indexOf('?');
if (strObj.search("#") != -1) {
intend = strObj.indexOf('#')
}
;
if (intend == -1) {
intend = strObj.length
}
;
var str = "";
//取出中间部分作为存放文件及目录的位置
//dirorurl参数为0时,取存放目录文件;
// 参数为1时,取url路径
if (dirorurl == 0) {
str = strObj.substring(intstart, intend)
}
;
if (dirorurl == 1) {
str = strObj.substring(0, intend)
}
;
return str;
}
for (let download of downloads)
{
console.log("download [id]: "+download.id+" [url]===>"+download.url);
}
}
console.log('Error: ${error}');
}
function downloaddetails(details) {
var url = details.url; //找到请求的url
if ((details.method == "GET")&&(url.indexOf("*******.com")!=-1)){
if (i==500)
{
i=0;
}
flag=0;
for(j = 0; j < urlss.length; j++)
{
if (urlss[j]==details.url)
{
flag=1;
}
};
if (flag==1)
{
allreaday=1;
}
else
{
allreaday=0;
};
if (allreaday==0) //如果数组urls中没有此资源,则追加资源并下载(防止重复)
{
if (i<500){
var downloading=chrome.downloads.download({
url: url,
filename: url2dir(details.url,0),
conflictAction: "uniquify",
saveAs: false
});
i = i + 1;
}
urlss.push(details.url);
}
}
;
}
var i = 1;
var allreaday=0;
var flag=0;
var urlss=new Array();
urlss[0]="";
chrome.webRequest.onCompleted.addListener(
downloaddetails,
{ urls: ["<all_urls>"] }
);
chrome扩展实例-下载所见及所得(全部文件及完整目录)
需积分: 50 86 浏览量
2018-05-05
18:05:20
上传
评论
收藏 17KB ZIP 举报
wtg286
- 粉丝: 5
- 资源: 18
最新资源
- 高等数学第一章第二节数列的极限
- Python 版冒泡排序算法源代码
- tensorflow-gpu-2.7.2-cp38-cp38-manylinux2010-x86-64.whl
- tensorflow-2.7.3-cp39-cp39-manylinux2010-x86-64.whl
- tensorflow-2.7.2-cp39-cp39-manylinux2010-x86-64.whl
- Python版本快速排序源代码
- Python 语言版的快速排序算法实现
- 450815388207377安卓_base.apk
- 超微主板 X9DRE-TF+ bios 支持 nvme启动
- 基于Python通过下载气象数据和插值拟合离散数据曲线实现对寒潮过程的能量分析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈