在信息時代的我們,獲取知識,提升認知如同吃飯一樣,成為了必須做的事情,閱讀是最常用的獲取知識的方式,沒用之一。
可是有時因為一些技術問題,導致我們閱讀不便。
比如前幾天,我想讀一本 《人人都能用英語[1]》,找到了用 Markdown 寫的原文,雖然可以閱讀,但如何在手機上閱讀,是個問題。
轉為 Pdf,或者 html,雖然是可以,不過閱讀起來很不方便,也記不住上次讀到哪里了,更要命的是無法做筆記。
也搜了紙質書,因為這本書沒用正式出版,所以也都是盜版的,就算了。
因為我經常用 多看APP 讀書,如果能直接在多看上看就好了。
嘗試了一圈,發現了一個好方法,現在我已經閱讀過半了,體驗很好,現在分享一下我的魔法過程。
# 解題思路
首先得知道,多看支持什么樣的電子書格式,百度一下,特別全,為了更好的體驗,決定轉為 epub。
那么如何將 Markdown 轉 epub 呢?一搜,發現有眾多在線轉服務,嘗試了幾個,不是收費就是各種限制,很不方便。
咱不是會編程嗎?如果能自己搞豈不更好?
改變檢索思路,很快發現了一個命令行工具 —— pandoc,進一步研究,發現竟然有 Python 版的 —— pypandoc,真是太棒了,研究一番,發現完全滿足我的需求。
于是解決方案就是:
下載 markdown 版電子書
用 pypandoc 轉化為 epub 格式
導入 多看, 閱讀
開干!
# 神器出場
之所以喜歡 Python 有一個重要的原因就是安裝和使用擴展很方便,幾乎每個神器出場的方式都是一樣的哈哈:
pip install pypandoc
友情提示:
最好創建一個虛擬環境來安裝,這樣不好影響其他庫,也方便遷移,理解和創建虛擬環境可以參考《 最好用的 Python 虛擬環境,沒有之一》
安裝成功之后,可以測試一下:
》》》 import pypandoc
》》》 print(pypandoc.get_pandoc_version())
2.14.2
可見,我安裝的版本是: 2.14.2
pandoc 是一個常用的軟件,很多操作系統比如 Windows 可能已經內置
另外也可以單獨安裝,使用它的命令行工具,更多的 Pandoc 安裝方式 和用法可以參考 pypandoc 說明[2] 和 Pandoc 文檔[3]
# 小試牛刀
翻看 pypandoc 說明,發現有個 convert_text 方法,可以用字符串的方式提供待轉化的文本。
那先寫一段 markdown 試試:
import pypandoc
input = “**Hello World!**”output = pypandoc.convert_text(input, ‘html’, format=‘md’)
print(output)
顯示結果如下:
《p》《strong》Hello World!《/strong》《/p》
太棒了,將 **Hello World!** 轉化成了一段 html 代碼了。
再試點復雜的:
import pypandoc
input = “”“
# Pandoc
Pandoc 是個牛X的工具
## 用法
- `convert_text`
- `convert_file`
”“”
output = pypandoc.convert_text(input, ‘html’, format=‘md’)
print(output)
看看輸出:
《h1 id=“pandoc”》Pandoc《/h1》《p》Pandoc 是個牛X的工具《/p》《h2 id=“用法”》用法《/h2》《ul》《li》《code》convert_text《/code》《/li》《li》《code》convert_file《/code》《/li》《/ul》
換一種輸出格式呢?
output = pypandoc.convert_text(input, ‘rst’, format=‘md’)
看看輸出:
Pandoc
======
Pandoc 是個牛X的工具
用法
----- ``convert_text``
- ``convert_file``
最好試試轉化為 ePub 格式
ePub 格式無法輸出為字符串,需要存入文件,所以需要用 加入 outputfile 參數
代碼如下:
convert_test(input, ‘epub’, format=‘md’, outputfile=‘test.epub’)
# 生成電子書
測試了沒問題后,就轉化一個 Markdown 文件試試。
對于文件,需要用 convert_file 方法:
import pypandoc
convert_file(‘everyone-can-use-english.md’, ‘epub’, ‘md’, outputfile=‘人人都能用英語.epub’)
很快就能生成一個 epub 格式的電子書。
這里需要注意的是:引用的
如果是網絡上的,需要將地址換成全網址,如果是相對的,需要保持目錄結構,并提前準備好。
不然將無法生成,使電子書失去一定的可讀性。
生成好了之后,可以將 人人都能用英語.epub 發送到手機上,用多看打開。
之后就可以在書架里看到了
簡直太棒了,可以安心的讀書了!
這下豈不實現了電子書自由啦!
# 總結
今天介紹了 pyPandoc 的簡單用法 pyPandoc 不僅幫助我創建了電子書,而且讓我理解了 Markdown 轉化為 Html 的對應關系,為進步步打造自己的寫作系統奠定了基礎。
Pandoc 是個強大的工具,利用好,可以幫助我們實現電子書自由,加上會 Python 編程,就更厲害了。
期望這篇文章對你有用,祝你打造出自己的電子書系統,比心!
責任編輯:haq
-
電子書
+關注
關注
7文章
110瀏覽量
22305 -
網絡
+關注
關注
14文章
7569瀏覽量
88808
原文標題:神器 pypandoc , 實現電子書自由
文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論