如何用python插入独创性声明


Posted in Python onMarch 31, 2021

想必写毕设的时候,大家都会遇到一个问题,那就是得在明评版的论文里面插入一个独创性声明。就因为这个事情,我折腾了好久,各种在线网站都试过了,然而基本都需要充值或者会员啥的。(小声嚷嚷:“万恶的资本”)
害~一不做二不休,我干脆自己写个小工具好了。

一、代码分析

利用PyPDF2库便可轻松地对PDF文件进行处理,具体用法大家可以参考这里。首先是安装这个库:

pip install PyPDF2

定义输入和输出对象:

# 定义输出对象
outputName = 'output.pdf'
output = PdfFileWriter()
# 定义读取对象
thesisPDF = PdfFileReader(open(thesisName,'rb'))
insertPDF = PdfFileReader(open(insertName,'rb'))
N_page = thesisPDF.getNumPages()
pos = int(input('论文一共有"%d"页,请输入需要插入的位置:'%N_page))

分别读取论文的PDF和独创性声明的PDF,随后将声明插入到论文中的指定页面:

# 将声明插入到指定页面
for i in range(pos):
  output.addPage(thesisPDF.getPage(i))
output.addPage(insertPDF.getPage(0)) # 插入
for i in range(pos,N_page):
  output.addPage(thesisPDF.getPage(i))

将结果保存到本地:

# 保存插入后的结果
output.write(open(outputName,'wb'))

到这里,我们就已经成功的把声明插入到指定的页面中了。你没有看错,就是这么简单~

二、完整代码

将以上几部分整合起来,完整的代码如下:

# -*- coding: utf-8 -*-
"""
Created on Thu Nov 5 20:13:18 2020

@author: kimol_love
"""
import os
from PyPDF2 import PdfFileWriter, PdfFileReader

# 用户输入论文名
while True:
  thesisName = input('请输入论文的文件名:') 
  if not os.path.exists(thesisName):
    print('文件不存在,请重新输入!')
    continue
  if thesisName[-4:].lower() != '.pdf':
    print('后缀错误,请重新输入!')
    continue
  break

# 用户输入需要插入的页面
while True:
  insertName = input('请输入声明的文件名:') 
  if not os.path.exists(insertName):
    print('文件不存在,请重新输入!')
    continue
  if thesisName[-4:].lower() != '.pdf':
    print('后缀错误,请重新输入!')
    continue
  break

# 定义输出对象
outputName = 'output.pdf'
output = PdfFileWriter()

# 定义读取对象
thesisPDF = PdfFileReader(open(thesisName,'rb'))
insertPDF = PdfFileReader(open(insertName,'rb'))
N_page = thesisPDF.getNumPages()
pos = int(input('论文一共有"%d"页,请输入需要插入的位置:'%N_page))

# 将声明插入到指定页面
for i in range(pos):
  output.addPage(thesisPDF.getPage(i))
output.addPage(insertPDF.getPage(0)) # 插入
for i in range(pos,N_page):
  output.addPage(thesisPDF.getPage(i))  

# 保存插入后的结果
output.write(open(outputName,'wb'))
print('"%s"已经成功插入到"%s"的第%d页'%(insertName,thesisName,pos))

运行效果如下:

如何用python插入独创性声明

打开生成的output.pdf,可以发现已经成功插入。

写在最后

最后,感谢各位大大的耐心阅读,咋们下次再会~

以上就是如何用python插入独创性声明的详细内容,更多关于用python插入独创性声明的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python开发编码规范
Sep 08 Python
使用python检测手机QQ在线状态的脚本代码
Feb 10 Python
Python3遍历目录树实现方法
May 22 Python
基于Python socket的端口扫描程序实例代码
Feb 09 Python
python远程调用rpc模块xmlrpclib的方法
Jan 11 Python
零基础使用Python读写处理Excel表格的方法
May 02 Python
Python3视频转字符动画的实例代码
Aug 29 Python
Django REST框架创建一个简单的Api实例讲解
Nov 05 Python
python实现图片插入文字
Nov 26 Python
用pytorch的nn.Module构造简单全链接层实例
Jan 14 Python
pytorch实现查看当前学习率
Jun 24 Python
只用40行Python代码就能写出pdf转word小工具
May 31 Python
python OpenCV学习笔记
python基于OpenCV模板匹配识别图片中的数字
Python insert() / append() 用法 Leetcode实战演示
Mar 31 #Python
tensorflow学习笔记之tfrecord文件的生成与读取
Mar 31 #Python
Python中快速掌握Data Frame的常用操作
Mar 31 #Python
pycharm无法导入lxml的解决办法
python某漫画app逆向
You might like
第六节 访问属性和方法 [6]
2006/10/09 PHP
PHP系统流量分析的程序
2006/10/09 PHP
用PHP和Shell写Hadoop的MapReduce程序
2014/04/15 PHP
javascript 基础篇4 window对象,DOM
2012/03/14 Javascript
为原生js Array增加each方法
2012/04/07 Javascript
JS自动缩小超出大小的图片
2012/10/12 Javascript
Javascript表格翻页效果实现思路及代码
2013/08/23 Javascript
Jquery中给animation加更多的运作效果实例
2013/09/05 Javascript
javascript模拟实现C# String.format函数功能代码
2013/11/25 Javascript
js实现鼠标悬浮给图片加边框的方法
2015/01/30 Javascript
javascript基本包装类型介绍
2015/04/10 Javascript
浅析JavaScript中的array数组类型系统
2016/07/18 Javascript
Vuejs第十一篇组件之slot内容分发实例详解
2016/09/09 Javascript
jQuery中get方法用法分析
2016/12/07 Javascript
Vue动态实现评分效果
2017/05/24 Javascript
Angular CLI在Angular项目中如何使用scss详解
2018/04/10 Javascript
简单实现节流函数和防抖函数过程解析
2019/10/08 Javascript
[01:08:10]2014 DOTA2国际邀请赛中国区预选赛 SPD-GAMING VS LGD-CDEC
2014/05/22 DOTA
基于Python闭包及其作用域详解
2017/08/28 Python
Python使用base64模块进行二进制数据编码详解
2018/01/11 Python
python实现银联支付和支付宝支付接入
2019/05/07 Python
利用Tensorflow的队列多线程读取数据方式
2020/02/05 Python
tensorflow中tf.reduce_mean函数的使用
2020/04/19 Python
keras:model.compile损失函数的用法
2020/07/01 Python
python实现xml转json文件的示例代码
2020/12/30 Python
用纯css3和html制作泡沫对话框实现代码
2013/03/21 HTML / CSS
移动web模拟客户端实现多方框输入密码效果【附代码】
2016/03/25 HTML / CSS
公司营业员的工作总结自我评价
2013/10/05 职场文书
护理自我鉴定范文
2013/10/06 职场文书
测绘工程本科生求职信
2013/10/10 职场文书
社区国庆节活动方案
2014/02/05 职场文书
新闻学专业求职信
2014/07/28 职场文书
村创先争优活动总结
2014/08/28 职场文书
项目技术负责人岗位职责
2015/04/13 职场文书
大学生创业,为什么都会选择快餐饮?
2019/08/08 职场文书
Python进程池与进程锁之语法学习
2022/04/11 Python