Greasy Fork

Thieme eRef Ripper

Download all PDF from an eBook

目前为 2019-12-14 提交的版本。查看 最新版本

// ==UserScript==
// @name         Thieme eRef Ripper
// @namespace    http://tampermonkey.net/
// @version      1.2
// @description  Download all PDF from an eBook
// @author       You
// @include      https://eref.thieme.de/ebooks/*
// @include      */ebooks/*
// @grant        GM_download
// @require      https://cdnjs.cloudflare.com/ajax/libs/arrive/2.4.1/arrive.js
// ==/UserScript==

(function() {
    'use strict';

var pdfs = [];
let name = document.getElementsByClassName("ct-ebook")[0].parentNode.textContent;
var indx = 0;

    document.arrive(".toc-tree", function() {
    // 'this' refers to the newly created element
        let downAllLi = document.createElement("li");
let downAll = document.createElement("input");
downAll.type = 'button';
downAll.value = "Download All";
downAll.addEventListener('click', function() {
    var elements = document.getElementsByClassName("tocPdfContainer");
    indx = 0;
    for (var ie = 0; ie < elements.length; ie++) {

        if (elements[ie].getAttribute("data-pdf-link").indexOf(".pdf") !== -1) {
					indx++;

          pdfs.push({ download: getBaseUrl() + elements[ie].getAttribute("data-pdf-link"), filename: indx + "_" + name + ".pdf"});

        };



    };

 download_files(pdfs);
}, false);
        downAllLi.appendChild(downAll);
this.insertBefore(downAllLi, this.firstChild);

});



function download_files(files) {
	for (var i = 0; i < files.length; i++) {

        GM_download(files[i].download, name+ "/" + files[i].filename);

    };

    alert("Downloading...");

}
    function getBaseUrl() {
            return window.location.protocol + "//" + window.location.host + "/" + window.location.pathname.split('/')[1];
    }



})();