Giter VIP home page Giter VIP logo

uncle-novel / uncle-novel Goto Github PK

View Code? Open in Web Editor NEW
2.8K 31.0 469.0 88.86 MB

📖 Uncle小说,PC版,一个全网小说下载器及阅读器,目录解析与书源结合,支持有声小说与文本小说,可下载mobi、epub、txt格式文本小说。

Home Page: https://uncle-novel.github.io/uncle-novel-official-site

License: MIT License

Java 76.66% Batchfile 0.07% SCSS 5.75% Inno Setup 3.01% Shell 3.13% CSS 11.38%
uncle-novel txt-mobi-epub openjfx

uncle-novel's Introduction

gradle build Netlify GitHub license

Uncle 小说

一个桌面端应用,支持 MacOS/Windows,提供了全网小说的转码阅读功能。其核心为目录解析功能,辅以书源模式进行(全网小说)小说的内容获取。

注意:本项目仅供学习交流,请勿用于商业用途,软件内产生的数据请关闭软件后立即删除!!

主要功能

  • 搜书文本小说
  • 搜书有声小说
  • 全网搜书
  • 文本小说书架
  • 文本小说阅读器
  • 有声小说书架
  • 解析下载
  • 下载管理
  • 书源管理
  • 软件设置
  • 全局热键
  • 主题定制
  • 国际化支持
  • 备份与恢复(WebDav)

预览

书架

书架提供了书籍的分组管理功能,同时支持按照分组批量更新书籍,也可以导入本地 TXT 小说到书架。

阅读器

软件设置

贡献代码

本地启动

准备环境:

  • jdk 至少需要 JDK11 版本。
  • npm install -g sass 安装 sass,本项目使用 sass 将 scss 编译为 css。
  • sqlite3,非必须,如果想重建 sqlite 数据库则需要安装。

然后直接运行 :app:runApp 任务即可。

./graldew :app:runApp

打包

# window 64 位包
./gradlew :app:packageWin64

# window 32 位包
./gradlew :app:packageWin32

# macos 包,如果要打 arm64 的包需要配置 arm64 的 jdk
./gradlew :app:packageMac

Star History

Star History Chart

uncle-novel's People

Contributors

curious-chen avatar geertjanw avatar unclezs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

uncle-novel's Issues

Cannot run program "exe4jc"

我已经提前下载了exe4j,安装后,并且在系统环境变量路径中已经配置了 E:\devTool\dev-tools\exe4j\bin
当我开始运行 packageWin64 时,提示
Caused by: cn.hutool.core.io.IORuntimeException: IOException: Cannot run program "exe4jc": CreateProcess error=2,系统找不到指定的文件

是因为我哪里设置的还有问题么?或者步骤不对?

Win10下下载EPUB格式很多章节丢失,目录错位

问题:

  1. 下载epub格式时只能下载一部分,很多章节丢失,尝试了Issue中说的线程数改成1个问题依旧,下载txt格式没问题
  2. 目录错位,第一章没有内容,所有内容都对应到了下一章

发现问题的时候是下载《我师兄实在太稳健了》这本书,链接 https://www.ibiquge.net/99_99713/ ,epub格式文件里只有一百多章,但是下载进度条那里806都是成功的,没报错
主要是epub格式搭配吾爱论坛的Neat Reader的强制双页感觉很nice,而这个工具恰好支持转换成epub就来试试

请问能实现选择部分章节吗

目前只能全选/全不选,不能选择特定章节,如果遇到小说过长,而不想全本下载的话,需要一个一个点击来选择章节,能不能做到这样呢(如图所示)?比如选定开始章节后,按住shift键再选定结束章节,以实现选择特定部分,或者鼠标拖动来框选特定章节

image

建议增加自动关机

RT,建议增加定时自动关机,或是下载完成后自动关机。现在没有关机功能,在下载一本小说时,只能把电脑一直开机运行,等下次要使用电脑,或是第二天,才能手动关机,浪费电力。

请问4.0的mac版在哪儿下载

你好,
感谢作者的这个软件。请问最新的4.0版的mac版在什么地方下载,发现现在的版本只有windows版本。谢谢。

下载的epub格式分章错误

分章节的识别似乎是另一个算法,而不是解析目录时那个列表?有的小说是不用标准的章节名格式《第1章 xxxx》而是直接《xxxx》的就无法识别,但网站上是分好章节的。

多线程下载容易丢章节

特别是在网络不太快的情况下,如果多线程,章节很容易丢失,并且还不提示下载失败,望修复

功能请求:支持阅读书源

有个Android软件叫阅读 可以自定义书源 然后使用的人为其制作了不少优质书源
数据是json格式的,这里给一个书源的示例
希望开发者能适配这种书源

功能建议

功能建议:
可以新增快捷键吗?

  1. 一键隐藏显示
  2. 以及翻页快捷键.
  3. 朗读语速调节

IDEA如何DEBUG?

疑问描述

之前一直从事非JavaFX开发,目前对这个项目比较感兴趣,但是发现不会从IDEA进行DEBUG(gradle打包运行等均没问题),请问如何在IDEA进行配置?

在IDEA中增加了一系列jvm参数,如--module-path--add-exports--add-opens等,但是运行com.unclezs.novel.app.main.App一直报错,请问该如何配置?

> Task :app:App.main() FAILED
Error occurred during initialization of boot layer
java.lang.module.FindException: Module jkeymaster not found, required by com.unclezs.novel.app.main

环境信息: Interl 64, MacOS 12.0.1, OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (build 11.0.11+9), JavaFX 17.0.1

@unclezs ,谢谢

部分网站单章节分为多个页面,目录获取的只是第一页,其他页通过page参数访问

eg:章节第一页 https://www.ygbqtl.com/x…x/mFALm4TpdZvfi.html
第一页下方有下一页链接Xpath='//*[@id="pt_next"]'
第二页 https://www.ygbqtl.com/x…x/mFALm4TpdZvfi.html?page=2
上面的案例来自七猫读书网,这种分页阅读的方式是不区分电脑还是手机的
我自己用python requests+lxm试了下,想到两种解决方案:
1.经过观察每个页面指向下一页的Xpath路径是相同的,不论是章节内不同页面,还是本章节最后一页指向下一章节第一页的Xpath路径相同,因此可通过递归或循环从第一章节第一页遍历到最后一章节最后一页。
2.获取目录链接后手动设置翻页参数name,最大翻页范围value,对于每一章链接尝试爬取所有页数范围,根据返回值将不存在的页数剔除,将同章节内容合并
上面的思路可能只对某个网站有效,如果有高级模式能自定义抓取规则可能会更通用一些

书源

我使用了搜书大师和阅读的书源,导入均无效,想知道这个软件的书源是必须自己编辑还是其他网站可以找到

下载卡主了

能搞个暂停再加重连吗?
现在卡住不动了,我怕取消再重新下载,之前下载的那么多没坐校验,又重新下载,哈哈

Windows10程序启动异常,请检查日志

疑问描述
Windows 10 20H2版本直接打开V5.0版本启动失败

2021-11-03 15:24:45 com.unclezs.jfx.launcher.Launcher loadLocalManifest
信息: 解析本地配置文件
2021-11-03 15:24:45 com.unclezs.jfx.launcher.LauncherView setPhase
信息: 正在检测更新...
2021-11-03 15:24:45 com.unclezs.jfx.launcher.Launcher syncManifest
信息: 获取远程配置文件:http://uncle-novel.unclezs.com/novel/prod/conf/app.json
2021-11-03 15:24:45 com.unclezs.jfx.launcher.LauncherView setPhase
信息: 正在检测是否有新版本...
2021-11-03 15:24:45 com.unclezs.jfx.launcher.Launcher syncManifest
严重: 更新失败
com.unclezs.jfx.launcher.LauncherException: Manifest加载失败: http://uncle-novel.unclezs.com/novel/prod/conf/app.json
	at [email protected]/com.unclezs.jfx.launcher.Manifest.load(Manifest.java:89)
	at [email protected]/com.unclezs.jfx.launcher.Launcher.syncManifest(Launcher.java:125)
	at [email protected]/com.unclezs.jfx.launcher.Launcher.checkForUpgrade(Launcher.java:110)
	at [email protected]/com.unclezs.jfx.launcher.Launcher.startApplication(Launcher.java:59)
	at [email protected]/com.unclezs.jfx.launcher.Launcher.lambda$start$1(Launcher.java:97)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.io.FileNotFoundException: http://uncle-novel.unclezs.com/novel/prod/conf/app.json
	at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
	at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
	at java.base/java.net.URL.openStream(Unknown Source)
	at [email protected]/com.unclezs.jfx.launcher.Manifest.load(Manifest.java:86)
	... 5 more

2021-11-03 15:24:45 com.unclezs.jfx.launcher.LauncherView setPhase
信息: 正在初始化运行环境...
2021-11-03 15:24:46 com.unclezs.jfx.launcher.LauncherView setPhase
信息: 程序启动异常!!!
2021-11-03 15:24:46 com.unclezs.jfx.launcher.LauncherView setError
严重: 程序启动异常
java.lang.NullPointerException
	at [email protected]/com.unclezs.novel.app.framework.support.fonts.FontsLoader.loadFonts(FontsLoader.java:36)
	at [email protected]/com.unclezs.novel.app.main.App.init(App.java:124)
	at [email protected]/com.unclezs.jfx.launcher.Launcher.lambda$startApplication$0(Launcher.java:70)
	at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(Unknown Source)
	at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(Unknown Source)
	at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
	at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)

滚动翻页和字体

疑问描述

1、为什么新版本去掉了滚动翻页呢,感觉挺好用的。
2、为什么我电脑明明安装了思源的字体,而里面的修改字体却看不到

代码缺少工具类

代码拉下来看了下,发现很多依赖包通过maven下载不下来,到仓库看了下貌似版本不对,就把版本改了。

然后其中有一个类 com.unclezs.gui.app.App,里面引用的com.unclezs.utils.ApiUtil 这个工具类在项目里没找到。。。
是不是我哪里设置不对?

书源

疑问描述

书源还得自己抓?

软件打开就崩溃

java.lang.NoClassDefFoundError: org/jnativehook/NativeHookException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)
at java.lang.Class.getConstructor0(Class.java:3075)
at java.lang.Class.newInstance(Class.java:412)
at fxlauncher.Launcher$1.lambda$createApplication$1(Launcher.java:54)
at fxlauncher.Launcher.lambda$runAndWait$4(Launcher.java:271)
at com.sun.javafx.application.PlatformImpl.lambda$null$172(PlatformImpl.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$173(PlatformImpl.java:294)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$null$147(WinApplication.java:177)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: org.jnativehook.NativeHookException
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 13 more

提示让看日志,但logs目录下并未生成日志文件
win7 64

转换mobi格式目录错位

第一章的目录下没有内容
第二章的目录下是第一章的内容
第三章的目录下是第二章的内容
...

低分辨率兼容问题

首先感谢大佬开发这么强大的软件,我的老年机只能1024*600分辨率,在这个分辨率无法看到设置之类的操作,请问您有计划做低分辨率优化吗?谢谢

三平台支持应该是jar包的形式吧

感谢分享,windows平台可用,用着也挺好,不过看介绍是三平台通用,应该提供其他平台可以使用的软件形式,linux和mac应该不能用exe文件

功能请求:增加WebDAV云备份功能

云备份功能应该有很多人需要
可以考虑增加支持下WebDAV备份功能,
将书架、书源等配置通过WebDAV备份在坚果云、TeraCloud、Box、onedrive里。
安卓端的 书迷APP 有此功能,非常不错~

Apple M1 native support

功能描述

界面很漂亮,但是需要转译运行,有卡顿感。研究了下项目,看起来是JFX实现的界面,又看了看现有的不需要转译的JDK貌似都没有集成JFX😲。。
截屏2021-07-11 上午10 42 55

应用场景

在当前m1的笔记本上不需要转译运行

最最好用的功能怎能取消?

。。。本来想说很多,最后都删除了,直接点题:

《下载时间间隔》,这个功能,对大多防盗的小说站来说,真是神器啊。

很多小说站,下载速度过快,直接505的,下载一章文章,等过几秒,再下载下一章,这样才不505,现在取消了这个功能,你下载速度过快,又有什么用?人家网站直接给你505或其它页面。
恳请恢复!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.