Python生成pdf目录书签的实例方法


Posted in Python onOctober 29, 2020

有时候我们用的一些pdf资料是没有目录的,这样找寻我们想到的东西比较麻烦。本篇文章就为大家带来python来生成pdf目录书签的方法。

首先,我们需要下载一个软件FreePic2Pdf,利用它我们可以将我们的pdf文件导入书签

工具下载:https://3water.com/softs/57870.html

Python生成pdf目录书签的实例方法

然后,我们需要获取原始版本的目录,这个可以到京东上找到书籍,查看目录,把其中的目录复制到一个txt文件中即可,或者有些pdf允许复制,也可以直接把目录复制下来。

Python生成pdf目录书签的实例方法

复制之后假设存到aa.txt文件中:

Python生成pdf目录书签的实例方法

接下来的,就是利用python读取txt来实现目录生成:

代码还是比较简单的,有需要的可以直接弄成.py文件,改下目标文件名运行即可,但是要注意aa.txt的文件格式得如上面一致才行

# 编码格式需要txt保存的编码格式是什么,只要最终文件不乱码就ok
fin = open("aa.txt", "r", encoding='GBK')
fout = open("bb.txt", "w")

for each_line in fin:
    list = each_line.split()
    for i in range(len(list) - 1): #倒数第一个元素是数字,先不放
        index=list[i].split('.')
        if(len(index)>1):
             # 第二级目录
            fout.write('\t')
            if(len(index)>2):
             # 第三级目录
                fout.write('\t')
                # 假如还有下级目录,可以继续追加...
        #  输出序号
        fout.write(list[i])
        # 输出空格
        fout.write(' ')
    # 为书页号置tap位
    fout.write('\t')
    num = int(list[-1]) + 0 #单独处理倒数第一个数字
    fout.write(str(num))#书页号
    # 下一行
    fout.write("\n")

fin.close()
fout.close()

运行结果:

Python生成pdf目录书签的实例方法

然后按照上述链接的方法,因为书面目录页码和实际页码的差距,需要修改起始页码的配置值,即可实现导入书签。

Python生成pdf目录书签的实例方法

加了目录的pdf是不是更加美观实用了呢?

以上就是Python生成pdf目录书签的实例方法的详细内容,更多关于Python生成pdf目录书签的方法的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python学习笔记--将python源文件打包成exe文件(pyinstaller)
May 26 Python
python2和python3的输入和输出区别介绍
Nov 20 Python
python分批定量读取文件内容,输出到不同文件中的方法
Dec 08 Python
解决Python列表字符不区分大小写的问题
Dec 19 Python
jupyter lab的目录调整及设置默认浏览器为chrome的方法
Apr 10 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
Jun 18 Python
Python3爬虫中关于Ajax分析方法的总结
Jul 10 Python
如何在mac版pycharm选择python版本
Jul 21 Python
详解Django ORM引发的数据库N+1性能问题
Oct 12 Python
彻底解决Python包下载慢问题
Nov 15 Python
Python获取百度热搜的完整代码
Apr 07 Python
Python学习之时间包使用教程详解
Mar 21 Python
利用python清除移动硬盘中的临时文件
Oct 28 #Python
python实现一个简单RPC框架的示例
Oct 28 #Python
pycharm永久激活超详细教程
Oct 29 #Python
linux mint中搜狗输入法导致pycharm卡死的问题
Oct 28 #Python
浅谈Python __init__.py的作用
Oct 28 #Python
详解Selenium-webdriver绕开反爬虫机制的4种方法
Oct 28 #Python
详解Python流程控制语句
Oct 28 #Python
You might like
咖啡店都有些什么常规豆子呢?有什么风味在里面
2021/03/04 咖啡文化
IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安装配置图文教程 2009年
2009/06/08 PHP
PHP读取PDF内容配合Xpdf的使用
2012/11/24 PHP
浅析PHP中的字符串编码转换(自动识别原编码)
2013/07/02 PHP
php通过正则表达式记取数据来读取xml的方法
2015/03/09 PHP
ECMAScript6函数剩余参数(Rest Parameters)
2015/06/12 Javascript
jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
2016/06/07 Javascript
基于JavaScript代码实现自动生成表格
2016/06/15 Javascript
javascript容错处理代码(屏蔽js错误)
2017/01/20 Javascript
使用vue官方提供的模板vue-cli搭建一个helloWorld案例分析
2018/01/16 Javascript
Vue动态加载异步组件的方法
2018/11/21 Javascript
Nodejs实现的操作MongoDB数据库功能完整示例
2019/02/02 NodeJs
node.js 基于cheerio的爬虫工具的实现(需要登录权限的爬虫工具)
2019/04/10 Javascript
详解将微信小程序接口Promise化并使用async函数
2019/08/05 Javascript
微信小程序前端promise封装代码实例
2019/08/24 Javascript
微信小程序如何播放腾讯视频的实现
2019/09/20 Javascript
Vue实现附件上传功能
2020/05/28 Javascript
Python多进程同步Lock、Semaphore、Event实例
2014/11/21 Python
python关键字and和or用法实例
2015/05/28 Python
python实现批量图片格式转换
2020/06/16 Python
浅析PyTorch中nn.Module的使用
2019/08/18 Python
使用Python实现分别输出每个数组
2019/12/06 Python
Python线程协作threading.Condition实现过程解析
2020/03/12 Python
python exit出错原因整理
2020/08/31 Python
python 5个实用的技巧
2020/09/27 Python
python不同版本的_new_不同点总结
2020/12/09 Python
python实现银行账户系统
2021/02/22 Python
英国在线自行车店:Merlin Cycles
2018/08/20 全球购物
意大利香水和化妆品购物网站:Parfimo.it
2019/10/06 全球购物
3.12植树节活动总结2014
2014/03/13 职场文书
教师党员一句话承诺
2014/03/28 职场文书
小学生保护环境倡议书
2014/05/15 职场文书
篮球比赛拉拉队口号
2014/06/10 职场文书
2015年建党94周年演讲稿
2015/03/19 职场文书
退休教师追悼词
2015/06/23 职场文书
Python标准库之typing的用法(类型标注)
2021/06/02 Python