Github地址为: https://github.com/ma6254/FictionDown
gituhb的用户名和我52pojie的用户名是一样的
下载链接在github的release里
小说爬取类的网上较多,基本上每个看小说的程序员应该都写过类似的东西
这个解决的是章节缺失和章节顺序错乱的问题
还内置了简单的广告过滤,实际上大部分需要手动删除
我学Golang没多长时间,这个算是练手
阅读器:
我安卓上用得的是readera,Mac上用的是calibre
运行时
书库
以下是README的内容(删去了部分内容)
FictionDown
特性
- 以起点为样本,多站点多线程爬取校对
- 支持导出txt,以兼容大多数阅读器
- 支持导出markdown,可以用pandoc转换成epub,保留书本信息、卷结构、作者信息
- 内置简单的广告过滤(现在还不完善)
- 用Golang编写,安装部署方便,外部依赖只有PhantomJS
使用流程
- 输入起点链接
- 获取到书本信息,开始爬取每章内容,遇到vip章节放入
Example 中作为校对样本
- 手动设置笔趣阁等盗版小说的对应链接,
tamp 字段
- 再次启动,开始爬取,只爬取VIP部分,并跟
Example 进行校对
- 手动编辑对应的缓存文件,手动删除广告和某些随机字符(有部分是关键字,可能会导致pandoc内存溢出或者样式错误)
d -f md 生成markwown
- 用pandoc转换成epub,
pandoc -o xxxx.epub xxxx.md
Example
> ./FictionDown --url https://book.qidian.com/info/3249362 d # 获取正版信息
# 有时会发生`not match volumes`的错误,请启用Chromedp或者PhantomJS
# Use Chromedp
> ./FictionDown --url https://book.qidian.com/info/3249362 d --driver chromedp
# Use PhantomJS
> ./FictionDown --url https://book.qidian.com/info/3249362 d --driver phantomjs
> vim 一世之尊.FictionDown # 加入盗版小说链接
> ./FictionDown -i 一世之尊.FictionDown d -f md # 获取盗版内容
> pandoc -o 一世之尊.epub 一世之尊.md
未实现
- 爬取起点的时候带上
Cookie ,用于爬取已购买章节
- 支持刺猬猫(即“欢乐书客”)
- 支持直接输出epub,不需要pandoc
- 支持小说站内搜索
- 多线程转换md
- 整理main包中的面条逻辑
- 整理命令行参数风格
- 在windows下,md转换到epub时有路径问题
- 完善广告过滤
- 简化使用步骤
- 优化log输出
- 书本简介也应该为HTML。即
<p> </p> 而不是现在的用\t 和\n
编译
包管理采用godep
dep ensure -v
make or make build 当前目录下就会产生可执行文件
交叉编译
需要安装gox
make multiple_build
支持的盗版站点
随机挑选了几个,实际上有些过于旧的书和作者频繁修改的书是爬不全的
- www.biqiuge.com
- www.biquge5200.cc
- www.bqg5200.com
- www.booktxt.net
- www.81new.com
|