返回首頁 

Greasy Fork is available in English.

小说下载器

一个可扩展的通用型小说下载器,目前支持起点、刺猬猫的免费章节,以及笔趣阁、手打吧、和图书等其它网站。

Fra og med 29.06.2020. Se den nyeste version.


Installer dette script?
Skaber
bgme
Bedømmelser
000
Version
1.3.2.3
Oprettet
26.06.2020
Opdateret
29.06.2020
Size
58,6 kB
Licens
AGPL-3.0-or-later
Gælder for

小说下载器

本脚本是一个可扩展的通用型小说下载器,适用于大多数静态小说网站。

使用方法

如果本脚本支持该小说网站,当打开小说目录页时,网页右上角会出现下载图标,点击该图标即可开始下载。

当下载完成后,会自动下载一个txt文档及zip压缩包。

如果你要下载的小说章节较多,等待时间可能较长,此时请耐心等待。

你也可以按下F12,打开网页控制台查看当前下载状态。

demo

目前支持小说网站

添加更多网站

你可以通过添加抓取规则以添加更多小说网站,即向 rules Map 中添加新的条目。

抓取规则示例:

["www.yruan.com", {bookname() { return document.querySelector('#info > h1:nth-child(1)').innerText.trim() },author() { return document.querySelector('#info > p:nth-child(2)').innerText.replace(/作\s+者:/, '').trim() },intro() { return convertDomNode(document.querySelector('#intro > p'))[0] },linkList() { return document.querySelectorAll('div.box_con div#list dl dd a') },coverUrl() { return document.querySelector('#fmimg > img').src; },chapterName: function(doc) { return doc.querySelector('.bookname > h1:nth-child(1)').innerText.trim() },content: function(doc) { return doc.querySelector('#content') },}],

抓取规则的 key 为该抓取规则适用的网站域名,即 document.location.host

抓取规则的 value 一对象,该对象由7个函数1个变量组成:

函数名功能返回值
bookname()抓取小说题名String
author()抓取小说作者String
intro()抓取小说简介String
linkList()抓取小说分章链接列表NodeList
coverUrl()抓取小说封面图片地址String

以上5个函数在小说目录页(即按下按钮时的页面)运行。

函数名功能返回值
chapterName(doc)抓取小说章节名String
content(doc)抓取小说章节主体部分Element

以上2个函数在小说章节页运行,输入值 doc 为小说章节页的 document

变量名功能备注
charset网站响应的编码方式可选

若网站返回的响应非 UTF-8 编码,请添加 charset 变量注明编码方式。网站当前编码方式可通过 document.charset 查看。

根据上述要求添加好相应网站抓取规则,并在 // @match 中添加相应网站,即可在新网站上使用本下载器。

调试功能

enableDebug 变量改为 true 可开启调试功能,开启之后可在控制台(console)中访问如下对象:

对象名类型功能
rule变量当前网站抓取规则
main(rule)函数运行下载器
convertDomNode(node)函数输出处理后的txt文本及Dom节点
ruleTest(rule)函数测试抓取规则

License

AGPL-3.0-or-later