文泉学堂PDF下载工具
本帖最后由 githuboy 于 2020-2-12 15:15 编辑基于java开发
以实现功能
1.图片错误、网络超时重试
2.生成PDF带目录
3.跳过已下载的图片
暂时别用了,100%封号
觉得这个小工具不错的朋友,麻烦给个Star,欢迎Fork.
针对出现URL未授权的,到https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html,下载最新jdk,不过貌似官网又把用户请求限流加上了,所以,很大概率账号会被封掉,导致下载不到图片(8字节大小,或者其他),针对这个,暂时无解。
2020年2月12日 01点25分
v1.0.6 更新
1. 修复nvc验证code:6001问题
2. 调整nvc验证失败处理逻辑
3. 修复图片名称空格出错问题
2020年2月10日 14点55分
v1.0.5 更新
1. 优化线程代码,IO耗时操作从JavaFX UI线程移除
2. 修复线程同步逻辑
3. 修复nvc验证请求失败时,程序卡死BUG
2020年2月10日 01点46分
v1.0.4 更新
1. 支持官网最新验证
2. 修复缩量图问题
2020年2月9日 00点23分
v1.0.3 更新
1. 支持分册书籍下载
2. 修复线程休眠时间单位(毫秒->秒)
2020年2月7日 00点26分
v1.0.2 更新
1. 简化程序命令参数
2. 将参数配置迁移至文件
项目地址:https://github.com/SweetInk/wqxuetang-pdf-downloader
关于如何使用问题
1. 安装JRE https://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
2. 下载构建我构建好的jar文件 https://github.com/SweetInk/wqxuetang-pdf-downloader/releases
然后解压到任意目录
最后执行 java -jar pdfd.jar -b 书号
config.properties中的参数值均有说明(除cookie和workPath需要修改,其他选项建议不要调整)
PS: COOKIE获取
登录文泉学堂后,打开开发者调试工具(F12)
然后把Cookie:后面的内容全部复制下来,粘贴到config.properties文件中的config.cookie后面
下载后的PDF请大家不要传播或售卖,如果您觉得图书不错请支持正版!
实验证明是会封设备的,我的账号封掉后,我尝试换设备登录封禁的账号是可以查看的,同理我用新账号登录同样无法阅读。
在这期间我尝试封禁设备更换ip地址可以正常观看,之后又被封禁,目前更换mac地址无效,不过可以确认是封设备的。
至于你们想调整时间我给你们截个图
cn.hutool.json.JSONException: A JSONObject text must begin with '{' at 1
at cn.hutool.json.JSONTokener.syntaxError(JSONTokener.java:385)
at cn.hutool.json.JSONObject.init(JSONObject.java:697)
at cn.hutool.json.JSONObject.init(JSONObject.java:684)
at cn.hutool.json.JSONObject.init(JSONObject.java:666)
at cn.hutool.json.JSONObject.<init>(JSONObject.java:189)
at cn.hutool.json.JSONObject.<init>(JSONObject.java:165)
at cn.hutool.json.JSONObject.<init>(JSONObject.java:147)
at cn.hutool.json.JSONObject.<init>(JSONObject.java:130)
at cn.hutool.json.JSONUtil.parseObj(JSONUtil.java:67)
at online.githuboy.wqxuetang.pdfd.FetchBookImageTask.lambda$requestNvc$0(FetchBookImageTask.java:76)
at com.sun.javafx.application.PlatformImpl.lambda$null$5(PlatformImpl.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$6(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$4(WinApplication.java:186)
at java.lang.Thread.run(Unknown Source)
返回这个错误的时候就没法继续下载
同时,服务器返回502/503的时候,能否自动挂起120s或者180s。现在5s似乎不能缓解,继续下载会一直报错,需要ctrl+c中断后重新开始才行 精通各种语言环境搭建的我此时很是兴奋 不是EXE啊??不会用~~~ 说实话,,JAVA这个环境是真的难配置。。 做一个程序吧?免得用这个代码,还得自学Java 不能长期使用是个遗憾 琴似蓝调 发表于 2020-2-5 19:46
精通各种语言环境搭建的我此时很是兴奋
请把你的兴奋化作群友的高潮 最好做出exe