Pixiv系列小说自动爬虫

根据Pixiv系列小说seriesID自动爬取指定章节或整本小说并可导出成.txt

Автор
DreamNya
Установок в день
4
Всего установок
4 701
Оценки
0 0 0
Версия
1.0
Создан
23.07.2022
Обновлён
23.07.2022
Лицензия
MIT
Работает на

【简介】
用来练手的爬虫脚本,放弃了引入第三方脚本,选择使用油猴内置函数,因此依赖油猴。
不需要设置cookies,只需要用浏览器登陆Pixiv保证对目标小说有访问权限即可。
下载内容存储在油猴脚本中,可通过控制台命令将指定小说导出到本地。

由于GM_xmlhttpRequest没有跨域限制,实际上可以将
// @match https://www.pixiv.net/novel/series/*
替换为
// @include *
从而在任意页面使用本脚本

【爬虫命令】
startMain(seriesID,"Charpters",isForce)
启动爬虫
--{number} seriesID: 必填,系列小说ID,获取位置为:https://www.pixiv.net/novel/series/系列小说ID (数字,不含?)
--{string} Charpters: 可选,指定章节,默认为全部,具体指定规则见后文
--{boolean} isForce: 可选,对于已存在章节是否强制下载,默认为否


downloadList()
获取已下载内容列表
无参数,返回2个内容,分别为全部章节和全部小说,全部小说中文本可用于download()参数中的NovelName


download(NovelName,Charpters)
导出已下载内容
--{string} NovelName: 必填,系列小说名,可通过downloadList()获取
--{string} Charpters: 可选,指定章节,默认为全部,具体指定规则见后文


Charpters 规则:
规则1:单一数字/^\d+$/ 添加单一数字章节到下载队列
规则2:数字范围/^\d+-\d+$/ 添加数字范围章节到下载队列
规则3:^单一数字/^\^\d+$/ 从下载队列中删除单一数字章节

多个规则用,分隔
例:"1,3-10,^5,15" 代表下载第1、3、4、6、7、8、9、10、15章
例:"^5,3-10,1,15" 代表下载第1、3、4、5、6、7、8、9、10、15章