From f2ec1f59219f8e6bba569895a0f4851199494f2f Mon Sep 17 00:00:00 2001 From: freeok <51998152+freeok@users.noreply.github.com> Date: Mon, 3 Feb 2025 02:45:29 +0800 Subject: [PATCH] :tada: Release v1.7.7 --- CHANGELOG.md | 40 +++++++++++-------- bin/jpackage-linux.sh | 2 +- bin/jpackage-windows-dev.sh | 2 +- bin/jpackage-windows.sh | 2 +- config.ini | 2 +- input/readme.txt | 2 +- pom.xml | 2 +- .../pcdd/sonovel/action/DownloadAction.java | 2 +- src/main/resources/rule/rule-5.json | 2 +- src/main/resources/rule/rule-6.json | 2 +- src/main/resources/rule/rule-7.json | 4 +- 11 files changed, 34 insertions(+), 28 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c0a826..3f9a79e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,23 +1,29 @@ -## v1.7.6 (2025-01-29) +## v1.7.7 (2025-02-03) ### ✨ 新特性 -- 支持繁体中文(台湾) 、简体中文互转 -- 新增书源 6:[全本小说网](https://quanben5.com/) (/~https://github.com/freeok/so-novel/issues/82) - -### 🐛 Bug 修复 - -- 修复下载指定章节起始章错误 -- 修复章节解析逻辑错误 -- 修复语言不为 zh_CN 时无法从起点获取最新封面 -- 修复在 String#replaceFirst 中标题包含括号时的 PatternSyntaxException +- 新增书源 7: [69书吧(官方)](https://69shuba.cx/) (/~https://github.com/freeok/so-novel/issues/40) +- 支持详情页 URL 下载 (/~https://github.com/freeok/so-novel/issues/78) +- rule.json 新增 timeout 属性 ### ♻️ 重构优化 -- txt、html 格式增加下载封面日志 -- 书源 1 ~ 4 规则增加 language 属性 -- 更新 rule-5.json -- 规范 language 值命名 -- 重构 ChineseConverter.java -- 重构 SearchResultParser#parse -- String#trim 替换为 String#strip (JDK 11) \ No newline at end of file +- 优化源站搜索结果 (根据每个作者对应的书籍数量降序) +- 起点榜单移动到 qidian_rank 目录 +- 更新 rule-6.json +- 清理 rule.json 冗余属性 +- 优化 BookSourceQualityTest.java +- 优化 ChapterParser.java +- 优化 Source#jsoupConn +- 优化 ChapterConverter#convert +- 重构 ChapterParser#parse +- 重构 NewSourceTest.java +- 重构 rule.json 排序属性 + +> [!NOTE] +> +> 温馨提示: +> +> 69书吧(官方)章节限流,使用前必须修改默认配置,[参见此处配置](/~https://github.com/freeok/so-novel/releases/tag/v1.7.3) +> +> 且搜索有 CF,故暂不支持搜索,只能通过输入书籍详情页网址下载 \ No newline at end of file diff --git a/bin/jpackage-linux.sh b/bin/jpackage-linux.sh index 8abcc89..63fdc3d 100644 --- a/bin/jpackage-linux.sh +++ b/bin/jpackage-linux.sh @@ -17,7 +17,7 @@ jpackage \ --input "target/jpackage" \ --dest dist \ --icon assets/logo-1.ico \ ---app-version 1.7.6 \ +--app-version 1.7.7 \ --copyright "Copyright (C) 2025 SoNovel. All rights reserved." \ --description "开源搜书神器" \ --vendor "FreeOK" \ diff --git a/bin/jpackage-windows-dev.sh b/bin/jpackage-windows-dev.sh index 5eb5c53..bf19a1d 100644 --- a/bin/jpackage-windows-dev.sh +++ b/bin/jpackage-windows-dev.sh @@ -25,7 +25,7 @@ jpackage \ --input "target/jpackage" \ --dest dist \ --icon assets/logo-1.ico \ ---app-version 1.7.6 \ +--app-version 1.7.7 \ --copyright "Copyright (C) 2025 SoNovel. All rights reserved." \ --description "开源搜书神器" \ --vendor "FreeOK" \ diff --git a/bin/jpackage-windows.sh b/bin/jpackage-windows.sh index 0540446..8f913d0 100644 --- a/bin/jpackage-windows.sh +++ b/bin/jpackage-windows.sh @@ -18,7 +18,7 @@ jpackage \ --input "nobug/jpackage" \ --dest dist \ --icon assets/logo-1.ico \ ---app-version 1.7.6 \ +--app-version 1.7.7 \ --copyright "Copyright (C) 2025 SoNovel. All rights reserved." \ --description "开源搜书神器" \ --vendor "FreeOK" \ diff --git a/config.ini b/config.ini index 0e6ef6c..4623f22 100644 --- a/config.ini +++ b/config.ini @@ -1,7 +1,7 @@ [base] # 书籍内容的语言 (可选值:zh_CN, zh_TW, zh_Hant) language = zh_CN -# 启用书源 (只能选一个,可选值:1, 2, 3, 4, 5, 6,不指定则随机使用) +# 启用书源 (只能选一个,可选值:1 ~ 7,例如 source-id = 7。不指定则随机使用) source-id = # 下载路径,绝对相对均可 (Windows 路径分隔符不要用 \ ,用 \\ 或 /) download-path = downloads diff --git a/input/readme.txt b/input/readme.txt index b761146..5bafbed 100644 --- a/input/readme.txt +++ b/input/readme.txt @@ -18,7 +18,7 @@ Linux 用户 温馨提示 - 为获得更好的使用体验,请将终端窗口最大化。 - config.ini 是配置文件,您可以在其中修改书源和下载格式。修改后无需重启应用(非 Windows 系统的兼容性未完全保证)。 -- 如何选择适合自己的书源,请参考:/~https://github.com/freeok/so-novel/issues/50。 +- 如何选择适合自己的书源,请参考:/~https://github.com/freeok/so-novel/issues/50(必读) - 如果搜索失败,建议多次尝试,稍后再试,并检查您的网络连接。 - 若章节下载失败,您可以尝试增大爬取间隔,直到找到合适的设置。 - 如果认为下载速度较慢,适当减小爬取间隔可能有助于提高速度,直到达到合适的平衡。 diff --git a/pom.xml b/pom.xml index 7fd9826..bcc77bc 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.pcdd so-novel - 1.7.6 + 1.7.7 jar so-novel diff --git a/src/main/java/com/pcdd/sonovel/action/DownloadAction.java b/src/main/java/com/pcdd/sonovel/action/DownloadAction.java index 9cc1460..6b87a57 100644 --- a/src/main/java/com/pcdd/sonovel/action/DownloadAction.java +++ b/src/main/java/com/pcdd/sonovel/action/DownloadAction.java @@ -32,7 +32,7 @@ public class DownloadAction { private final AppConfig config; public void downloadFromUrl(LineReader reader) { - String bookUrl = reader.readLine(render("==> @|blue 请输入详情页 URL: |@")).strip(); + String bookUrl = reader.readLine(render("==> @|blue 请输入书籍详情页网址: |@")).strip(); Book book = new BookParser(config).parse(bookUrl); SearchResult sr = SearchResult.builder() .url(book.getUrl()) diff --git a/src/main/resources/rule/rule-5.json b/src/main/resources/rule/rule-5.json index 87f7939..81d7f00 100644 --- a/src/main/resources/rule/rule-5.json +++ b/src/main/resources/rule/rule-5.json @@ -2,7 +2,7 @@ "id": "5", "url": "https://69shux.co/", "name": "69書吧", - "comment": "需要梯子、无CF盾、章节有限流、数量5w+", + "comment": "需要梯子、无CF、章节有限流、数量5w+", "type": "html", "language": "zh_Hant", "search": { diff --git a/src/main/resources/rule/rule-6.json b/src/main/resources/rule/rule-6.json index 7f7a3e5..859a4fd 100644 --- a/src/main/resources/rule/rule-6.json +++ b/src/main/resources/rule/rule-6.json @@ -2,7 +2,7 @@ "id": 6, "url": "https://quanben5.com/", "name": "全本小说网", - "comment": "正文内容纯净,搜索需加密参数b,有时很卡", + "comment": "正文内容纯净,搜索需加密参数b,有时很卡,甚至打不开网站", "type": "html", "language": "zh_CN", "search": { diff --git a/src/main/resources/rule/rule-7.json b/src/main/resources/rule/rule-7.json index 0dce020..0ff1734 100644 --- a/src/main/resources/rule/rule-7.json +++ b/src/main/resources/rule/rule-7.json @@ -2,7 +2,7 @@ "id": 7, "url": "https://69shuba.cx", "name": "69书吧", - "comment": "正文内容纯净、搜索有CF、章节限流、需要梯子", + "comment": "需要梯子、正文内容纯净、搜索有CF、章节限流", "type": "html", "language": "zh_CN", "book": { @@ -27,7 +27,7 @@ "content": ".txtnav", "paragraphTagClosed": true, "paragraphTag": "p", - "filterTxt": "", + "filterTxt": "无一错一首一发一内一容一在一6一9一书一吧一看!|(本章完)", "filterTag": "h1 div br" } } \ No newline at end of file