CHANGELOG_ALL.md
cf.jsonVirtualThreadLimiter.javaCheckUpdateAction.javaCrawlUtils#hasCf()SearchResultsHandler#sort()Book.javaRule#Book#wordCount-Dfile.encodingstart-custom-jre.cmd 错误run-macos.sh #308SourceUtils.javaproxy-rules.jsonflowlimit-rules.jsonSPONSORS.mdreadme.txtfeedback.ymllanguage 属性默认从系统获取search-limit 未指定时不为全部collection.getFirst()OkHttpClientFactory.javaMain.javaBookSourceQualityTest.javaBOOK_SOURCES.mdqidian_rankfetch-github-releases.shVirtualThreadTest.javaresources 文件sourceIdCoverUpdater.javaCrawler.java、SingleSearchAction.java"this.jna" is null #233docker-install.sh 启动容器调用错误config.ini、ConfigUtilsCrawler.java、ChapterParser.java、BookSourceTest.java、JsoupUtils#clearAllAttributes、
ChapterParser#fetchSinglePageContent、Parser#httpClientfeedback.ymlBOOK_SOURCES.mdREADME.mdactive-rules 绝对路径 #203<p> #195proxy-rules.jsonBookSourceTest.javaREADME.mdCHANGELOG_ALL.md[!NOTE]
CLI 用法
bash# Windows .\sonovel.exe -h # Linux ./runtime/bin/java -jar app.jar -h # macOS ./runtime/Contents/Home/bin/java -jar app.jar -h # Docker docker run -it --rm -v /sonovel/config.ini:/sonovel/config.ini -v /sonovel/downloads:/sonovel/downloads -v /sonovel/rules:/sonovel/rules sonovel:v1.8.5 -h
active-rules, show_download_logcrawlansidocker-install.sh 在 WSL Ubuntu 安装失败D1WorkersDISCLAIMER.mdfeedback.ymldocker-install.shjlineBookSourceQualityTest.java:ambulance: 修复 macOS 和 Linux 运行出错 :bug: fix watchConfig NoResourceException #170
[!Note] 若 Linux 版运行报错:libjavet-v8-linux-x86_64.v.4.1.3.so: libatomic.so.1: cannot open shared object file: No such file or directory
请尝试执行以下命令解决
bashsudo apt update sudo apt install libatomic1 -y
HttpURLConnection 为 OkHttpJS Runtime 由 Nashorn 升级为 Javet (V8 嵌入)language 配置项EnvUtilsOkHttp 配置nashorn 线程不安全导致 JS 执行结果错误txt、html 格式下载封面失败导致的中断config.ini 配置项为空串时,hutool Setting#getStr 不能触发默认值CrawlUtils#normalizeUrlwindows 非法文件名替换Crawler.java、ChapterParser.javaBookSourceTest.javahutool 升级至 5.8.37README.mdBOOK_SOURCES.mdqidian_rankSourceUtils.javaBookSourceQualityTest.javaSearchResultParser 并重命名为 SearchParserSearchResultsHandler#handleSearchResult#sourceIdSearchResultParser#parseBOOK_SOURCES.mdISSUE_TEMPLATE 无效链接qidian_rankChapterFilter.javaChapterParser.javaJsoupUtils#selectSearchResultParserTocParser#extractPaginationUrlsDockerfile[!NOTE]
最新书源信息见:#50
[!NOTE]
温馨提示:
这一版新增的
69书吧(官方)有限流,使用前必须修改默认配置,否则会被该网站封禁 IP(至少几个小时无法使用)且搜索页有 CF,故暂不支持搜索,只能通过输入书籍详情页网址下载
source-id 时,使用随机书源Source.javaREADME.md、readme.txt问题反馈、功能请求[!TIP]
69書吧限流较为严重,下载速度明显慢于其他书源。
建议先使用以下配置,之后根据需要进行微调。
ini# config.ini [crawl] # 爬取最小间隔 (毫秒) min = 1000 # 爬取最大间隔 (毫秒) max = 2000 # 爬取线程数,-1 表示自动设置 threads = 1 [retry] # 最大重试次数 max-attempts = 5 # 重试爬取最小间隔 (毫秒) min = 2000 # 重试爬取最大间隔 (毫秒) max = 5000还需要指定书源 ID, 大陆用户可能需要设置代理
ini[base] # 启用69書吧 source-id = 5 # 网络代理 proxy-host = 127.0.0.1 proxy-port = your port
更新内容
✨ 新增书源 4
✨ 更新书源 1、3 过滤规则
✨ epub 内容首页增加封面;txt、html 目录增加封面
🐛 修复正文包含重复标题 #57
🚸 默认不启用自动更新 #53
♻️ 重构 txt 合并代码
更新内容:
✨ 新增书源 3 (http://www.mcmssc.la/)
✨ TXT 开头添加书籍信息
✨ 新增书源质量检测 #50
🚸 改善交互体验 #46
🚸 启动时校验 source-id 合法性
💄 优化 EPUB、HTML、TXT 正文排版
⚡ EPUB 生成后删除临时目录
🐛 修复部分书源封面 URL 获取异常
🐛 修复某些情况下搜索失败
📝 更新使用说明 readme.txt
更新内容:
🚸 支持动态加载配置文件,修改配置文件后无需重启
✨ 新增配置项 auto-update(启动时是否自动更新)
🐛 修复封面下载失败会中断 epub 生成
🐛 修复自动更新时预览版本号比较问题
📝 新增 Homebrew 安装方法,感谢 Weizhao
更新内容
更新内容
更新内容
更新内容
:bug: 修复部分用户 macOS、Linux 启动报错
更新内容
:arrow_up: 依赖升级
| dependency | before | after |
|---|---|---|
| jsoup | 1.17.2 | 1.18.1 |
| hutool | 5.8.28 | 5.8.33 |
| lombok | 1.18.32 | 1.18.34 |
| junit-jupiter-api | 5.10.2 | 5.11.3 |
| launch4j-maven-plugin | 2.5.1 | 2.5.2 |
更新内容
[!WARNING]
致 Scoop 用户:v1.6.0 开始,so-novel-with-jre 已弃用,请卸载并重装 so-novel
scoop uninstall so-novel-with-jre
scoop bucket add freeok https://github.com/freeok/scoop-bucket
scoop install freeok/so-novel
scoop install so-novel
更新内容
更新内容
更新内容
更新内容
更新内容
更新内容
更新内容
下载选择
更新内容
更新内容
更新内容
更新内容
更新内容
更新内容
更新内容
书源已失效,勿用