// ==UserScript== // @name Pixiv 增强 // @namespace https://github.com/Ahaochan/Tampermonkey // @version 0.0.8 // @description 屏蔽广告, 查看热门图片, 按收藏数搜索, 替换大图, 下载gif、多图, 显示画师id、画师背景图, 自动加载评论。github:https://github.com/Ahaochan/Tampermonkey,欢迎star和fork。 // @author Ahaochan // @match https://*.pixiv.net* // @match https://*.pixiv.net/* // @connect i.pximg.net // @grant GM_xmlhttpRequest // @grant GM_setClipboard // @require https://code.jquery.com/jquery-2.2.4.min.js // @require https://cdn.bootcss.com/jszip/3.1.4/jszip.min.js // @require https://cdn.bootcss.com/FileSaver.js/1.3.2/FileSaver.min.js // @downloadURL none // ==/UserScript== (function ($) { 'use strict'; // 删除广告、查看热门图片 (function () { // 删除广告 $('._premium-lead-tag-search-bar').hide(); // 查看热门图片 $('.popular-introduction-overlay').hide(); })(); // 按收藏数搜索 (function () { $('.navigation-menu-right').append( '
'); // 如果已经有搜索字符串就在改变选项时直接搜索 $('#ahao_favourite_num_select').on('change', function () { var $text = $('#suggest-input'); if (!!$text.val()) { $('#suggest-container').submit(); } }); // 在提交搜索前处理搜索关键字 $('#suggest-container').submit(function () { var $text = $('#suggest-input'); var $favourite = $('#ahao_favourite_num_select'); // 去除旧的搜索选项 $text.val($text.val().replace(/\d*users入り/, '')); // 去除多余空格 while ($text.val().indexOf(' ') > -1) { $text.val($text.val().replace(' ', ' ')); } // 添加新的搜索选项 $text.val($text.val() + ' ' + $favourite.val()); }); })(); // 下载图片 (function () { if (!(location.href.indexOf('member_illust.php') !== -1)) { return; } // 获取参数 var param = $('.bookmark_modal_thumbnail') .attr('data-src') .match(/img-master\/img([\s\S]*?)_/) [1]; // 单图、多图、gif图三种模式 var moreMode = !!$('a.read-more').length; var gifMode = !!$('div ._ugoku-illust-player-container').length; var singleMode = !moreMode && !gifMode; // 替换单图为大图 (function () { if (!singleMode) { return; } console.log('加载单图模式'); var img = $('.original-image').attr('data-src'); $('div.works_display') .find('img') .attr('src', img) .css('width', '100%'); })(); // 下载动图 (function () { if (!gifMode) { return; } console.log('加载gif图模式'); var url = 'https://i.pximg.net/img-zip-ugoira/img' + param + '_ugoira600x600.zip'; // 添加下载按钮 $('div .bookmark-container').append( '' + ' 下载动图' + ''); })(); // 下载多图 (function () { if (!moreMode) { return; } console.log('加载多图模式'); var downloaded = 0; // 下载完成数量 var num = $('a.read-more').text().match(/\d+/); // 下载目标数量 // 1. 添加下载按钮 var zip = new JSZip(); var $a = $('' + ' 下载中' + ''); $a.on('click', function () { if (downloaded < num) { return; } zip.generateAsync({type: "blob", base64: true}) .then(function (content) { saveAs(content, "pic.zip"); // see FileSaver.js' }); }); $('div .bookmark-container').append($a); // 2. 获取图片地址 var ajaxs = []; var imgUrls = []; var illust_id = pixiv.context.illustId; for (var i = 0; i < num; i++) { var url = 'https://www.pixiv.net/member_illust.php?mode=manga_big&illust_id=' + illust_id + '&page=' + i; var ajax = $.ajax({ type: 'GET', url: url, headers: {referer: 'https://www.pixiv.net/'} }); ajaxs.push(ajax); } // 3. 获取所有图片url后 $.when.apply($, ajaxs).then(function () { for (var i in arguments) { var html = arguments[i][2].responseText; var pattern = /(