上一个
下一个

制作一本epub格式的电子书

0.前言

好久不见,这里是柒氿。

总算把上学期艰难度过了,真是不怎么愉快的一学期,不过这些不是这篇文章主题。总而言之,暑假终究还是到来了。把上学期的小尾巴处理掉之后,逐渐开始有了一些自己的空闲时间——虽然还是有许多事要忙碌和操心,可恶,就不能哪天突然暴富一下吗。

说回正题,《我推的孩子》在四月番中颇有热度啊。我本来想寻找漫画看一看的,可惜的是B漫实在是有些贵,在网络上找到的许多在线漫画又无法让我在墨水屏上阅读,实在是让人扫兴。

出于好奇,我去寻找了一下我最常用的epub格式的电子书是怎么做成的,惊讶的是它居然是个压缩文件。也就是说将它后缀名改为.zip再解压,就可以轻松破解它的秘密。

于是我开始了将122卷漫画制作成一本epub的漫长探索——好吧,虽说漫长但也只用了一天时间,而且我还走了不少弯路,现在就把思路分享出来。

1.爬虫:获得122卷内容的图片

既然要制作电子书,那就得有素材。在网上看了看,很明显那些网站都是用图片保存一张张漫画的。那么最简单的想法就是分别爬取下来。

没想到我居然在这上面栽了个小跟头。

一开始我没有细找一个好的网站,找到的第一个网站是动态加载的。我们都知道这种动态加载的只需要找到真正发回图片的url就行,通过F12我们可以轻松在network里找到——问题是我没找到。

于是我就换了种方式,使用selenium模拟浏览器,但是慢的要死,一分钟才能保存完一卷,那要到什么时候。更何况居然还会有错误的图片,明明浏览器能加载出来,但是直接访问图片地址会404,让人摸不着头脑。

这时我才突发奇想,既然这个网站那么难处理,我可以换个网站啊。

接下来就是简单的爬虫了。与之前的爬虫相比没有什么技术含量,代码就不放出了。

2.探秘epub

在解压缩以后,经过简单分析,会发现最重要的是这两个文件,toc.ncx建立了目录索引,content.opf填充内容。

当然了,还有一些申明分类,作者等的文件,以及允许压缩格式的文件,这里略过不谈。

值得一提的是,这里的标记语言十分类似html,或者说就是扩展了的html。所以只要懂一点点html的话这些工作都是机械工作了,编一段小程序可以快速做完这些工作。

3.效果展示

4.后续

我尝试了许多漫画网站,写了三个不同网站的爬虫。所以说资源这一块还是比较丰富的,也许日后这些还能派上用场?

122卷漫画的大小有500mb,还是蛮大的。遗憾的是制作完了以后感觉索然无味,已经没有阅读这一漫画的心情了。

订阅评论
提醒
1 评论
最旧
最新 最多投票
内联反馈
查看所有评论
1 年 前

结尾十分生草

《制作一本epub格式的电子书》

1
0
希望看到您的想法,请您发表评论x