Skip to content

Commit

Permalink
添加晋江文学城token获取功能和其他修复 (#682)
Browse files Browse the repository at this point in the history
* 获取jj token的实现(测试不可用)

* 修复 Jjwxc 类中的 androidId 返回值,恢复动态生成的 ID

* fix #467

* 修正提示信息中的用词,建议用户更换 Tampermonkey 版本以解决兼容性问题

* 更新 README.md,添加晋江获取 token 的两种方法说明

* 更新 Jjwxc 类,修复登录请求中的 ID 生成逻辑,优化请求头,添加匿名请求和 JSON 响应类型

* 更新 README.md,完善获取 token 的方法说明,增加脚本设置获取的详细步骤

* 更新 README.md,修正获取 token 方法的描述,优化格式和内容
  • Loading branch information
ldm0206 authored Nov 6, 2024
1 parent 1437da1 commit 0c692ec
Show file tree
Hide file tree
Showing 7 changed files with 285 additions and 22 deletions.
18 changes: 15 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ EPUB 文件请使用相应阅读器阅读。
| [七猫中文网](https://www.qimao.com/) ||| 请先进入作品目录再运行脚本。 |
| [废文网](https://sosad.fun/) ||| 部分小说或章节需登录后查看。 |
| [pixiv](https://www.pixiv.net/novel/) ||| 单页应用,如打开书籍详情页右上角未出现下载图标,请按下 F5 重新加载当前页面。 |
| [动漫之家](https://www.dmzj.com/) ||| 需下载大量图片,速度较慢,请耐心等待。<br>需占用大量内存,请保证最终生成文件 4 倍以上内存,即最终下载生成 500MB ZIP 文件,运行时请保证至少 2GB 内存空间。可使用筛选函数,分次下载。 |
| [动漫之家](https://www.idmzj.com/) ||| 需下载大量图片,速度较慢,请耐心等待。<br>需占用大量内存,请保证最终生成文件 4 倍以上内存,即最终下载生成 500MB ZIP 文件,运行时请保证至少 2GB 内存空间。可使用筛选函数,分次下载。 |
| [Lofter](https://www.lofter.com/) ||| 因本脚本会将博文中的图片也一同下载下来,对于图片特别多的博客,下载时请注意内存用量(800MB 限制),根据实际情况使用筛选函数分次下载。<br>部分博文内含视频内容,为节省内存使用,加快下载速度,本脚本将跳过视频内容。<br>如您使用广告屏蔽器,可能会影响本脚本在 Lofter 的工作。 |
| [努努书坊](https://www.kanunu8.com/) ||| 格式众多,如发现不支持页面敬请反馈。 |
| [真白萌](https://masiro.me/) ||| |
Expand Down Expand Up @@ -222,9 +222,21 @@ EPUB 文件请使用相应阅读器阅读。

### 晋江文学城

需要抓取的数据:登录晋江文学城 Android app 并随意浏览章节,在形如“https://app.jjwxc.org/androidapi/chapterContent?” 等链接中找到 &token= 后的字符串(止于下一个&)
该网站现提供 2 个方法以获取 token

在脚本管理器中新建如下脚本(不要把该脚本代码和其他脚本代码合并,除非你完全理解脚本的意思)并保存:
1. 脚本设置获取

- 在任意晋江小说页面加载完时打开设置,在“基本设置”选项卡中会看到“获取token”按钮(仅限第一次打开可见),点击按钮并关闭设置,按页面提示输入账号和密码后点击登录,如收到验证码则填入验证码后再次点击登录,如操作无误则可以看到返回的 token 值。

- 该方法可能需要禁用主设备验证功能。如获取失败可根据提示重试、先在晋江 app 里重新登录后再试。如一直不能获取,则参考方法 2 。
***
2. 自行抓取。

- 要抓取的数据:登录晋江文学城 Android app 并随意浏览章节,在形如“https://app.jjwxc.org/androidapi/chapterContent?” 等链接中找到 &token= 后的字符串(止于下一个&)

***

成功抓取token后,在脚本管理器中新建如下脚本(不要把该脚本代码和其他脚本代码合并,除非你完全理解脚本的意思)并保存:

```javascript
// ==UserScript==
Expand Down
2 changes: 1 addition & 1 deletion src/detect.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ async function TM_4_14_bug_Detect() {
alert(
`检测到您当前使用的脚本管理器为 Tampermonkey 4.14。
Tampermonkey 4.14 因存在 Bug 将导致小说下载器脚本无法正常运行,详情可参见:https://github.com/Tampermonkey/tampermonkey/issues/1418 。
如您想继续使用小说下载器脚本,请您降级 Tampermonkey 版本,或使用 Violentmonkey 脚本管理器。
如您想继续使用小说下载器脚本,请您更换 Tampermonkey 版本,或使用 Violentmonkey 脚本管理器。
如果您不欲降级或更换脚本管理器,同时不想再看到本提示,您可以暂时禁用小说下载器脚本。`
);
throw new Error("Tampermonkey 4.14 Bug Detect");
Expand Down
11 changes: 7 additions & 4 deletions src/header.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@
"*://book.qidian.com/info/*",
"*://www.qidian.com/book/*",
"*://www.jjwxc.net/onebook.php?novelid=*",
"*://m.jjwxc.com/book2/*",
"*://m.jjwxc.net/book2/*",
"*://www.gongzicp.com/novel-*.html",
"*://gongzicp.com/novel-*.html",
"*://m.gongzicp.com/novel-*.html",
Expand Down Expand Up @@ -80,8 +82,8 @@
"*://www.idejian.com/book/*/",
"*://www.wenku8.net/novel/*/*/index.htm",
"*://www.wenku8.net/book/*.htm",
"*://www.dmzj.com/info/*.html",
"*://manhua.dmzj.com/*",
"*://www.idmzj.com/info/*.html",
"*://manhua.idmzj.com/*",
"*://www.westnovel.com/*/*/",
"*://www.mht99.com/*/",
"*://www.banzhuer.org/*_*/",
Expand Down Expand Up @@ -262,7 +264,7 @@
"*://dijiuben.com/*_*/*.html",
"*://ncode.syosetu.com/*/*/",
"*://novel18.syosetu.com/*/*/",
"*://manhua.dmzj.com/",
"*://manhua.idmzj.com/",
"*://houhuayuan.vip/",
"*://book.sfacg.com/Novel/*/*/*/",
"*://www.alphapolis.co.jp/novel/*/*/episode/*",
Expand Down Expand Up @@ -292,6 +294,7 @@
"kuangxiangit.com",
"sinaimg.cn",
"jjwxc.net",
"jjwxc.com",
"gashuw.com",
"qpic.cn",
"zongheng.com",
Expand All @@ -309,7 +312,7 @@
"zhangyue01.com",
"cdn.wtzw.com",
"wenku8.com",
"dmzj.com",
"idmzj.com",
"007zw.com",
"hongyeshuzhai.com",
"linovelib.com",
Expand Down
4 changes: 2 additions & 2 deletions src/router/download.ts
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,8 @@ export async function getRule(): Promise<BaseRuleClass> {
ruleClass = Qimao;
break;
}
case "manhua.dmzj.com":
case "www.dmzj.com": {
case "manhua.idmzj.com":
case "www.idmzj.com": {
const { Dmzj } = await import("../rules/special/reprint/dmzj");
ruleClass = Dmzj;
break;
Expand Down
14 changes: 14 additions & 0 deletions src/router/ui.ts
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,20 @@ export function getUI(): () => UIObject {
}
};
}
case "m.jjwxc.com": case "m.jjwxc.net": {
return () => {
return {
type: "jump",
jumpFunction: () => {
const regex = /https:\/\/m\.jjwxc\.(com|net)\/book2\/(\d+)/;
document.location.href = document.location.href.replace(
regex,
'https://www.jjwxc.net/onebook.php?novelid=$2'
)
},
}
};
}
case "ebook.longmabook.com":
case "www.longmabookcn.com":
case "ebook.lmbooks.com":
Expand Down
Loading

0 comments on commit 0c692ec

Please sign in to comment.