Greasy Fork is available in English.
下载天猫图片
当前为
// ==UserScript==
// @name 天猫 图片获取脚本
// @namespace https://www.tmall.com
// @version 0.82
// @description 下载天猫图片
// @author Richard He
// @iconURL http://www.xuebalib.cn/userjs/icon.icon
// @resource css http://www.xuebalib.cn/userjs/css.css
// @match https://detail.tmall.com/*
// @match https://detail.tmall.hk/*
// @grant GM_log
// @grant GM_setClipboard
// @grant GM_notification
// @grant GM_download
// @grant GM_setValue
// @grant GM_getValue
// @grant GM_deleteValue
// ==/UserScript==
//获取缩略图地址
var lis = document.getElementsByClassName('tb-thumb')[0].childNodes;
GM_setValue('c1',1);
for(var i=0;i<lis.length;i++)
{
if(i%2 == 1)
{
var thumb = lis[i].childNodes[1].childNodes[0].src;
var arr = thumb.split(".");
arr.splice(-2,1);
var addr = arr.join(".");
//生成按钮
var buttonR = document.createElement('a');
buttonR.href = 'javascript:void(0)';
var tmp = GM_getValue('c1');
GM_setValue('c1',tmp+1);
buttonR.title = addr+'-'+tmp;
buttonR.onclick = function()
{
GM_download(this.title.split('-')[0],'s'+this.title.substr(-1,1)+this.title.split('-')[0].substr(-4,4));
};
buttonR.target = '_blank';
buttonR.innerHTML = Math.ceil(i/2);
buttonR.style.border='1px solid #FF8F1C';
buttonR.style.display = 'inline-block';
buttonR.style.width = '32px';
buttonR.style.height = '32px';
buttonR.style.lineHeight = '32px';
buttonR.style.textAlign = 'center';
buttonR.style.color = '#FF8F1C';
buttonR.style.margin = '6px 2px';
document.getElementsByClassName('tb-gallery')[0].appendChild(buttonR);
}
}
GM_deleteValue('c1');
//分类图
var jAmount = document.getElementById('J_Amount');
var tbImg = document.getElementsByClassName('tb-img')[0];
if(jAmount.nodeName == 'DD'&&typeof(tbImg)!='undefined'&&document.getElementsByClassName('tb-img')[0].childNodes[1].childNodes[1].style.backgroundImage.indexOf('url')>=0)
{
var down = document.createElement('dl');
var dt = document.createElement('dt');
jAmount.parentNode.parentNode.insertBefore(down,jAmount.parentNode);
dt.className = 'tb-metatit';
dt.innerText = '下载分类';
down.className = 'tb-prop tm-sale-prop tm-clear tm-img-prop';
down.appendChild(dt);
var dd = document.createElement('dd');
down.appendChild(dd);
var ul = document.createElement('ul');
ul.className = 'tm-clear J_TSaleProp tb-img ';
dd.appendChild(ul);
var tbImg = document.getElementsByClassName('tb-img')[0];
var catLis = document.getElementsByClassName('tb-img')[0].childNodes;
GM_setValue('c1',1);
if(tbImg.nodeName == 'UL')
{
for(var m=0;m<catLis.length;m++)
{
if(catLis[m].nodeName == 'LI')
{
var bg = catLis[m].childNodes[1].style.backgroundImage;
console.log(typeof(bg));
if(bg.indexOf('url')>=0)
{
var ur= bg.split("(")[1];console.log("ur is"+typeof(ur));
var url=ur.split(")")[0];console.log("url is"+typeof(url));
var arr1 = url.split(".");
arr1.splice(-2,1);
var addr1 = arr1.join(".");
addr1 =addr1.substring(1,addr1.length-1);
//生成按钮
var tli = document.createElement('li');
var ta = document.createElement('a');
ta.href = 'javascript:void(0)';
var tmp = GM_getValue('c1');
GM_setValue('c1',tmp+1);
ta.title = addr1+'-'+tmp;
ta.onclick = function()
{
GM_download("http:"+this.title.split('-')[0],'f'+this.title.split('-')[1]+this.title.split('-')[0].substr(-4,4));
};
ta.target = '_blank';
ta.style.color = '#FF8F1C';
ta.innerText = Math.ceil(m/2);
ul.appendChild(tli);
tli.appendChild(ta);
}
}
}
}
}
//获取详情图
function saveImg(imgsrc,filename)
{
GM_download(imgsrc,filename+imgsrc.substr(-4,4));
}
var imgAdrs = new Array();
var buttonC = document.createElement('a');
buttonC.href="javascript:void(0);";
buttonC.onclick = function()
{
var desLis = document.getElementsByClassName('ke-post')[0].childNodes;
if(typeof(desLis[0]!='undefined'))
{
for(var h=0;h<desLis.length;h++)
{
if(desLis[h].align == "absmiddle"&&desLis[h].nodeName == 'IMG')
{
imgAdrs.push(desLis[h].src);
}
else if(desLis[h].childNodes.length>0)
{
for(var i=0;i<desLis[h].childNodes.length;i++)
{
if(desLis[h].childNodes[i].nodeName == 'IMG')
imgAdrs.push(desLis[h].childNodes[i].src);
}
}
}
GM_notification({
text:'本次将下载 '+imgAdrs.length+ ' 张图片',
title:'友情提示',timeout:3000},function()
{
for(var j=0;j<imgAdrs.length;j++)
{
saveImg(imgAdrs[j],""+j);
}
});
}
};
buttonC.target = '_blank';
buttonC.innerHTML = '获取详情页';
buttonC.style.zIndex = 666;
buttonC.style.position = 'fixed';
buttonC.style.bottom = '0px';
buttonC.style.right = '200px';
buttonC.style.border = '1px solid #FF8F1C';
buttonC.style.padding = '6px 12px';
buttonC.style.color = '#FF8F1C';
document.body.appendChild(buttonC);
//图片加边框
var buttonD= document.createElement('a');
buttonD.href="javascript:void(0);";
buttonD.onclick = function()
{
var desLis = document.getElementsByClassName('ke-post')[0].childNodes;
for(var h=0;h<desLis.length;h++)
{
if(desLis[h].align == "absmiddle"&&desLis[h].nodeName == 'IMG')
{
desLis[h].style.borderTop = '4px solid red';
desLis[h].style.borderBottom = '4px solid red';
}
else if(desLis[h].childNodes.length>0)
{
for(var i=0;i<desLis[h].childNodes.length;i++)
{
if(desLis[h].childNodes[i].nodeName == 'IMG')
desLis[h].childNodes[i].style.borderTop = '4px solid red';
desLis[h].childNodes[i].style.borderBottom = '4px solid red';
}
}
}
};
buttonD.target = '_blank';
buttonD.innerHTML = '图片加边框';
buttonD.style.position = 'fixed';
buttonD.style.bottom = '40px';
buttonD.style.right = '200px';
buttonD.style.zIndex = 666;
buttonD.style.border = '1px solid #FF8F1C';
buttonD.style.padding = '6px 12px';
buttonD.style.color = '#FF8F1C';
document.body.appendChild(buttonD);