如果博客是一本书
2015-08-22
……那么,我愿把“如果”两字去掉
博客出书,不胜枚举:《暗时间》、《万万没想到》、《说服力》、《正版语文》……
不严格的说,《明朝那些事儿》也算此列吧。
这些人写的文章,明明在网上公开发布过,又印成铅字,出版一遍。稿酬可观,买的人还不少。简直人生赢家。
赘述繁多,都是废话。 本篇讨论的,是另一层意义上的博客成书——也就是某个热心的粉丝读者,把作者的网上文集扒下来,然后做成电子书的故事。
明确需求
对于一个博客的老读者而言,在线订阅最省心省力1。博客更新频繁,这样读者能确保及时跟上进度。
当然,随意浏览也无妨。博客原本就适用于游览式地看。
寒来暑往,花开花落,世况有变。我遇见了李华治先生的博客。 几篇文章读下来,越发体会到其叙事精彩,抒情悠长,评论痛快,文气充盈,文风对路。
真想一口气全部读下来。
……痴人说梦。普通的大学生哪有条件一口气看完呢……
暗忖:
博客文章一般按日期先后发表,越新的越前。想要找最老的,必须翻到最后。
按从前往后的顺序,还要翻页很麻烦。中断了,又必须 记住进度(万一忘存收藏夹, 只记得读到那一篇,却不记得那一篇在哪页,那就不好了)。
因此我认为更好的阅读顺序,是从老文章读到新文章。沿时间长河顺流而下,好似历经一次作者成长的过程。然而, 那不得从博客分页的最后一页翻到第一页吗……
况且,老夫已不再是当年那个在电脑上看小说的我了。如今早已习惯移动阅读——自己走路时,坐巴士时,拿起手机,都可以看,可谓省时不费事。
手机阅读,虽不拘时空,仍有局限。譬如网络不稳,又如电量不多。联上网后,耗电增加,可谓两弊叠加。
灵光一闪,心生妙计——把博客做成电子书,手机上看。
来来来,数一数优点:
- 制作时可以自定阅读顺序。从老文章一路看到新文章,很平滑
- 同上,自定排版格式
- 手机离线显示,省电
- 阅读进度不会丢失
制定计划
- 扒文章
- 分析每篇文章的网址,并下载网页
- 分析网页结构,只把文章标题、日期、内容扣下来,其他的不要
- 把扣下来的文章,分门别类的保存
- 转换成电子书
- 选取合适的电子书格式,并用恰当的转换工具转换
- 生成目录,设计排版
- 扉页,作者信息一些可有可无的东西
不要怂,就是干
扒文章
扒文章当然得作爬虫。做爬虫当然得用python。用python当然得用miniconda发行版,配spyder。哎呀,扯远了
python库多,任性。
用哪些库?因为要联网,所以要urllib2;要读写文件,用os;还要分析网页结构,这个一会儿再说。哦,可以先透露一下,全部都是用的内置标准库哟。
分析网址: 这个文章地址啊,too simpile ! 结构形如http://lihuazhi.com/123
其中123换成随便一个什么正整数。开头简直顺利得……
下载网页: 没想到404等错误直接反馈给了urllib2.urlopen(),枉我分析404页特征一场空。另外得把以图片为主的两个分类排除掉,不下载
分析内容: 见过太多人吐槽美汤这个库又慢又不好使,于是我去看了看lxml和Xpath。虽然很多人推荐,很多人用,但搜到的中文资料不多,我这种渣能看懂的更少。勉强看官方文档,懂了一点,然后放弃了lxml。
到头来,分析网页用的工具还是——re!正则表达式,简单易懂!实乃居家旅行,xxxx 之必备良药,打遍天下都不怕不怕啦。用re分析,关键是懂得.+?
和gruop()
,不要漏了re.S
(DOTALL模式),其他请随意。
内容缓存: 大蟒摸了这么久,数据结构却没用过几个。本来想用从前没用过的 dict 来存。但是哥发现了逼格更高的结构——类。可以可以,哥也是写过面向对象的人了又一个从0到1的突破哈哈哈。既然确定了类为主体,除了用来存标题日期等的属性以外,不在旗下挂几个方法是说不过去的。于是有了 get() ,有了 save()。
内容保存: 这就是刚刚提到的 save() 干的活,并没什么好说的。之前提取到了带标记含元素的html
代码块,文件直接存为%category%/yymm%title%.html
。别忘了如果目录不存在,还要额外写几行来建个目录。
什么?听说作为html
文件标准格式,前后要有DOCTYPE!htmlheadbodyooxx
?真麻烦,不管了。没那些玩意的html
照样能在哥的浏览器里显示得好好的。谁不服?请咬我!2
到最后一个环节还真被咬了。我今天算是小小地埋了伏笔一下。
转epub
电子书当然要用epub格式的。这种格式,手机、kindle(越狱后)通杀,各种软件支持,排版格式神马丰富全面。
现在,就差怎么把这么多Html转换成一个EPub格式的电子书了。
尝试一 github上找了个名叫"html2epub"的py脚本。详询…居然只会把每一个html都换成一个epub。
辣鸡>_>
哼
尝试二 据说很神奇的pandoc
。按照官方介绍的示例,多个文件制epub,依样画瓢。哦,还做了个脚本生成恶心的、折成很多行的命令行。运行……第一行就报错了。连官网的示例都报错。
哼,辣鸡>_>
穷则思变。哥这不是典型的用命令行用傻了吗。一门心思想着命令行工具耍起来威风凛凛,殊不知GUI界另有一番广阔天地。啊,又扯远。低头默讼:“装逼如风,常伴吾身。无形装逼,最为致命。”
尝试三 掌上书苑,国内业界知名站点,出了个制作器,叫epubbuilder。取名有范,看起来挺牛的。试看官方介绍:
书苑开发的ePub电子书制作神器,支持多国界面语言,支持unicode编辑,支持导入Txt、epub、Html、chm、snb等源文件;支持图文混排、音频、视频、多级目录等;方便快捷的界面;无需专业知识也可快速生成一本专业的电子书。
请注意第一句神器两个字。敢这么自称的,一般还真有两把刷子,比如:赘述神器
国货当自强,就决定是您了,epubbuilder!
下载装好打开。居然得登陆才能继续?还好以老司机夫多年经验,眼尖发现了“离线”按钮,成功进入。界面上大大地摆着“未授权”。
呃。没授权好像不影响使用吧。开工,批量导入html……
然后!导入了乱码!
霎时没找到改编码的地方,这不重要。重要的是,“未授权”三个字依然在眼前晃来晃去。
真~辣鸡>_>
卸了。
卸归卸, 装逼大业 可不好半途而废。那么,有没有真正 逼格高 好用的epub制作工具?
扯开话题,到底哪种软件才能算highBger?全是洋文?NONONO!高逼格软件一般具有以下特征:
- 免费
- 开源
- 跨平台
- 小众
哦,不好意思,其实标准只有一个,也就是这个那个第四个。
尝试四 朋友,你听说过“sigil”吗?sigil完全符合前三项标准。至于第四项……仁者见智咯
sigil真的超好用,功能完善,支持中文。而且,您瞅这华丽的花体字,逼格满满,让人单看图标也完全猜不到跟书有关 ,比某苑做的某神器不知道高到哪里去了。
收工
一些收尾细节
目录、排版,随便搞一搞。目录用两级:文章分类一级,标题一级。
封面,作者信息,扉页这种东西就真没必要了。因为反正只给自己看。
……(何不众乐乐?因为版权啊版权。没作者授权,老夫是不会传播的)
俗话说:
现世报,来得快
经上述流程,粗制滥造做出来的电子书,只有多看能正确显示。(还好多看你没有抛弃我TT)
请大家观赏效果图: 如果图片太大,请点击图片以看小图!
上图为:原本设定的排版
以上是anyview上的显示效果
多看阅读
静读天下 Moon+
接下来有请搞笑组登台:
起点读书
网易云阅读