0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何用神器pyPandoc创建电子书

Linux爱好者 来源:Python技术 作者:派森酱 2021-10-26 09:45 次阅读

信息时代的我们,获取知识,提升认知如同吃饭一样,成为了必须做的事情,阅读是最常用的获取知识的方式,没用之一。

可是有时因为一些技术问题,导致我们阅读不便。

比如前几天,我想读一本 《人人都能用英语[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

    文章

    108

    浏览量

    22096
  • 网络
    +关注

    关注

    14

    文章

    7250

    浏览量

    87436

原文标题:神器 pypandoc , 实现电子书自由

文章出处:【微信号:LinuxHub,微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    贸泽联手Analog Device推出全新电子书 重点介绍可提高生产力和能源效率的解决方案

    2024 年 3 月 4 日 – 专注于引入新品的全球电子元器件和工业自动化产品授权代理商贸泽电子 (Mouser Electronics) 与Analog Devices联手推出全新电子书
    发表于 03-06 14:46 101次阅读

    贸泽电子和TE Connectivity联手发布新电子书 探讨电动汽车和互联交通的发展态势

    Connectivity联手发布了一本新电子书,探讨电动汽车和快速发展的互联交通的现况。这本新电子书重点介绍了一些新兴工程主题,如V2X生态系统、5G车队远程信息处理、大功率电动汽车充电的未来以及其他设计趋势
    发表于 01-02 18:03 128次阅读

    贸泽和Analog Devices联手发布新电子书 就嵌入式安全提供多位专家的深入见解

    , Inc. (ADI) 联手发布一本新电子书,探讨一些实用策略来帮助设计人员克服嵌入式安全所面临的挑战。   如今的嵌入式设备需要安全地测量、存储、传输数据并升级固件,但每项功能都是一个潜在的系统漏洞
    发表于 12-21 17:47 108次阅读

    贸泽电子联手NXP Semiconductors推出全新电子书 深入探讨汽车电气化设计面临的挑战

    联手推出全新电子书《7 Experts on Designing Vehicle Electrification Solutions》(7位专家联手献策:设计汽车电气化解决方案)。NXP
    发表于 11-10 14:10 397次阅读

    STM8 C语言精品编程100例PDF电子书

    STM8S C语言精品编程100例 PDF电子书,精准定位于初级学习目的,搭配丰富的代码注解,大幅提高开发技能
    发表于 09-27 06:19

    贸泽电子和Bourns联手推出新电子书 重点介绍无源元件在电子设计中日益重要的作用

    2023年9月14日– 提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 代理商贸泽电子 (Mouser Electronics) 与Bourns, Inc.合作发布了一本新电子书,探讨
    发表于 09-18 11:13 216次阅读

    贸泽电子推出全新电子书 深入探讨Analog Devices推动数字工厂的新技术

    推出全新电子书《Leading the Way to the Digital Factory》(迈向数字工厂),探索数字工厂的技术进步,这些技术包括传感器、边缘计算和高速工业通信。   在这本电子书
    发表于 09-08 17:58 352次阅读

    python有什么用 如何用python创建数据库

    python有什么用 如何用python创建数据库 Python是一种高级编程语言,可以用于开发各种类型的应用程序和工具。它的广泛应用使它在编程领域中极为受欢迎。Python被用于数据分析、web
    的头像 发表于 08-28 16:41 777次阅读

    使用气密性测试仪检测电子书阅读器的气密性

    气密性测试仪是一种专业设备,用于检测物体的气密性,即其防止气体渗透的能力。以下是使用气密性测试仪检测电子书气密性的基本步骤: 1. 准备设备和材料 首先,你需要一个气密性测试仪,这是一个密封的容器
    的头像 发表于 08-22 11:56 394次阅读

    给自己和初学者安利一本书:《RISC-V 手册》

    初入RISC-V 不了解的太多最近找到了一本电子书 。 内容非常详细。对本人很有帮助。也推荐给大家。*附件:RISC-V-Reader-Chinese-v2p1.pdf
    发表于 08-21 00:13

    贸泽电子与Molex携手推出全新电子书 提供有关去中心化数据管理的见解和专业知识

    全新电子书《The Power of Innovation and Data: Revolutionizing Industrial, Healthcare, Automotive and Data
    发表于 08-10 14:41 201次阅读

    电子书下载-蓝牙连接的特点和优势

    SiliconLabs (亦称 “ 芯科科技 ” )近期制作了关于蓝牙无线连接技术的电子书( E-book )- 蓝牙连接的特点和优势(The Features and Benefits
    的头像 发表于 08-07 18:35 564次阅读
    <b class='flag-5'>电子书</b>下载-蓝牙连接的特点和优势

    贸泽电子为设计工程师提供丰富多样的技术电子书

    2023 年7 月18 日 – 专注于推动行业创新的知名新品引入 (NPI) 代理商™贸泽电子 (Mouser Electronics) 发布了三本与设计相关的新电子书,深入开展一系列技术探讨,包括
    发表于 07-19 14:40 227次阅读

    电子书阅读器内置锂电池供电自动切换电路

    ,并对锂电池进行充电。 下图电路就是实现上述的功能,它来自一款电子书阅读器(Kindle同类产品):     这是已量产的电路,成熟稳定,实物电路板如下图所示,几个关键的元器件做了标注:     本文要讲解的是“外置USB供电与内置锂电池供电的自动切换
    的头像 发表于 06-17 09:14 1196次阅读
    <b class='flag-5'>电子书</b>阅读器内置锂电池供电自动切换电路

    贸泽电子联手Texas Instruments推出全新电子书 探索城市空中运输的未来

    2023 年 6 月 12 日 – 专注于引入新品的全球半导体和电子元器件授权代理商贸泽电子 (Mouser Electronics) 与Texas Instruments联手推出全新电子书
    发表于 06-13 16:36 291次阅读
    贸泽<b class='flag-5'>电子</b>联手Texas Instruments推出全新<b class='flag-5'>电子书</b> 探索城市空中运输的未来