// ==UserScript==
// @name TitleSearch
// @namespace http://tampermonkey.net/
// @version 4.01
// @description try to take over the world!
// @author TitleSearch
// @match *://www.abooky.com/*
// @match *://www.yousuu.com/search*
// @match *://dushuxiaozi.com/category*
// @require http://libs.baidu.com/jquery/2.0.0/jquery.min.js
// ==/UserScript==
(function () {
'use strict';
var urllist = [
{ name: 'abooky', url: /www\.abooky\.com/, titleid: '.ts', nosign: '' },
];
function gettitle(t, str1, str2) {
let lnum, rnum, title;
lnum = t.indexOf(str1);
rnum = t.indexOf(str2);
if (lnum < 0) lnum = 0
if (rnum < 0) rnum = 0
if (lnum > 0 || rnum > 0) {
title = t.substring(lnum + 1, rnum);
}
if (title)
title = title.replace('[TXT格式]', '').replace('\n', '');
return title;
}
function addbutton(t) {
if (t) {
console.log(t);
let title = gettitle(t, '《', '》');
if (!title) {
title = gettitle(t, '<', '>');
}
if (!title) {
title = gettitle(t, ']', '⊙');
}
console.log(title);
if (title) {
let b = $('<button></button>');
b.text('优书网');
b.css({
"color": " #666",
"background-color": " #EEE",
"border-color": " #EEE",
"font-weight": " 300",
"font-size": " 16px",
"text-decoration": " none",
"text-align": " center",
"line-height": " 25px",
"height": " 25px",
"padding": " 0 15px",
"margin": " 0",
"display": " inline-block",
"appearance": " none",
"cursor": " pointer",
"border": " none",
"-webkit-box-sizing": " border-box",
"-moz-box-sizing": " border-box",
"box-sizing": " border-box",
"-webkit-transition-property": " all",
"transition-property": " all",
"-webkit-transition-duration": " .3s",
"transition-duration": " .3s",
"border-radius": " 4px"
});
b.click(function () {
var content = document.createElement("a");
content.href = 'http://www.yousuu.com/search/?search_type=title&search_value=' + title + '#TitleSearch';
content.target = '_blank';
document.body.appendChild(content);
content.click();
document.body.removeChild(content);
});
return b;
}
}
}
function addDownbutton(t) {
if (t) {
console.log(t);
let title = gettitle(t, '《', '》');
if (!title) {
title = gettitle(t, '<', '>');
}
if (!title) {
title = gettitle(t, ']', '⊙');
}
console.log(title);
if (title) {
let b = $('<button></button>');
b.text('下载');
b.css({
"color": " #666",
"background-color": " #EEE",
"border-color": " #EEE",
"font-weight": " 300",
"font-size": " 16px",
"text-decoration": " none",
"text-align": " center",
"line-height": " 25px",
"height": " 25px",
"padding": " 0 15px",
"margin": " 0",
"display": " inline-block",
"appearance": " none",
"cursor": " pointer",
"border": " none",
"-webkit-box-sizing": " border-box",
"-moz-box-sizing": " border-box",
"box-sizing": " border-box",
"-webkit-transition-property": " all",
"transition-property": " all",
"-webkit-transition-duration": " .3s",
"transition-duration": " .3s",
"border-radius": " 4px"
});
b.click(function () {
var content = document.createElement("a");
content.href = 'https://dushuxiaozi.com/wp-content/uploads/2019/book/' + title + '.zip';
content.target = '_blank';
document.body.appendChild(content);
content.click();
document.body.removeChild(content);
});
return b;
}
}
}
function make(obj) {
if (obj.url.test(location.href)) {
let t = $(obj.titleid).text();
let b = addbutton(t);
if (b) $(obj.titleid).after(b);
}
}
function autoclick() {
const books = $('.list-card-layout');
console.log(books);
if (books.length == 1) {
const bookname = books.find('.bookname');
console.log(bookname);
if (bookname.length == 1) {
bookname[0].click();
setTimeout(function () { window.close(); }, 300);
}
}else if (books.length == 0) {
window.close();
}
}
function dushuxiaozi() {
function checkVisible(elm) {
var rect = elm.getBoundingClientRect();
var viewHeight = Math.max(document.documentElement.clientHeight, window.innerHeight);
return !(rect.bottom < 0 || rect.top - viewHeight >= 0);
}
function loop() {
const s = document.querySelector('.ias-trigger-next');
if (s) {
let r = checkVisible(s);
if (r) {
s.click();
serch();
}
}
}
var count = 0;
var isok = false;
function serch() {
var list = document.querySelectorAll("#main h2 > a");
console.log(list);
if (count != list.length && !isok) {
isok = true;
for (var i = 0; i < list.length; i++) {
let t = $(list[i]).text();
console.log(t);
if (list[i].getAttribute('titlesearch_mk') != 'true') {
let b = addbutton(t);
let b2 = addDownbutton(t);
if (b) {
$(list[i]).after(b2);
$(list[i]).after(b);
list[i].parentNode.style.cssText = 'font-size: 18px;width: 750px;';
list[i].setAttribute('titlesearch_mk', 'true');
}
}
}
isok = false;
}
}
setInterval(loop, 1000);
serch();
document.querySelector("#main").addEventListener('DOMNodeInserted', serch);
}
function run() {
if (location.hash && location.hash == '#TitleSearch') {
setTimeout(autoclick, 500);
}
else {
if (/dushuxiaozi/.test(location.href)) {
dushuxiaozi();
} else {
urllist.forEach(make);
}
}
}
run();
})();