// ==UserScript== // @name Export Weibo Album to List or Image // @namespace https://greasyfork.org/zh-CN/users/10666-sbdx // @version 0.4.20160926 // @description 批量导出新浪微博相册图片,用于保存、下载 // @author sbdx // @include http://t.sina.com.cn/* // @include http://weibo.com/* // @include http://www.weibo.com/* // @include http://s.weibo.com/* // @include http://s.weibo.com/pic/* // @include http://photo.weibo.com/* // @include http://d.weibo.com/* // @exclude http://s.weibo.com/user/* // @exclude http://weibo.com/app/* // @exclude http://weibo.com/app // @require http://cdn.bootcss.com/jquery/1.8.3/jquery.min.js // @downloadURL none // ==/UserScript== /* @echo off Rem wget批量下载并且重命名 批处理文件 setlocal enabledelayedexpansion set /a num=0 FOR /F %%i in (URL.txt) do ( set /a num+=1 title !num! wget -c -q %%i -O !num!.jpg ) */ jQuery(function(){ var nw,UID,AlbumID,Type,total_pic,imgCountInPage,boolShowPicOrLink; //$.ajaxSetup({async:false,cache:false}); function ProcessAlbum() { for(var p=1,lens=Math.ceil(total_pic/imgCountInPage); p<=lens; p++) { //console.log('正在获取第'+p+'页'); url='http://photo.weibo.com/photos/get_all?uid=' + UID + '&album_id=' + AlbumID + '&count=' + imgCountInPage + '&page=' + p + '&type=' + Type + '&__rnd='+(new Date().getTime()); console.log('Get '+url); $.getJSON(url,function(rtn){ //异步调用,返回顺序不一致 plist=rtn.data.photo_list; for(i=0,plist_len=plist.length;i
'); } else { nw.document.writeln(''+picurl+'
'); } } }); } nw.document.title='加载完成'; } function GetAlbumPic() { UID=$GLOBAL_DETAIL.album_info.uid; //博主ID AlbumID=$GLOBAL_DETAIL.album_info.album_id; //相册ID Type=$GLOBAL_DETAIL.type; total_pic=$GLOBAL_DETAIL.album_info.count.photos; //相片总数 imgCountInPage=30; //每页显示数量 boolShowPicOrLink=true; //显示图片或地址 if(total_pic>50) { boolShowPicOrLink=confirm("图片数量过多,请选择显示 图片 或 连接!\n是 - 显示图片 否 - 显示连接"); } nw=window.open('','output'); nw.document.title='正在载入......'; ProcessAlbum(); } function ShowLargeImageInSinglePage() { $('.media_box img').each(function(i){this.src=this.src.replace(/(http:\/\/.+?\/)(.+?)(\/.*)/i,'$1large$3');}); } if (document.location.host == "photo.weibo.com") { $("body").append("
");$("#sbdx_tools_getAllImage").on("click",GetAlbumPic); } else { $("body").append("
");$("#sbdx_tools_for9").on("click",ShowLargeImageInSinglePage); } $(window).scroll(function(){$("div[id^=sbdx]").each(function(i){$(this).offset({top:$(document).scrollTop()+100+i*30});});}); });