如何用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中使用HTMLParser解析html实例
Feb 08 Python
Python实现信用卡系统(支持购物、转账、存取钱)
Jun 24 Python
python爬虫中get和post方法介绍以及cookie作用
Feb 08 Python
Python多进程原理与用法分析
Aug 21 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
Feb 18 Python
python实现五子棋程序
Apr 24 Python
如何学习Python time模块
Jun 03 Python
python如何支持并发方法详解
Jul 25 Python
在pycharm中文件取消用 pytest模式打开的操作
Sep 01 Python
Python 实现3种回归模型(Linear Regression,Lasso,Ridge)的示例
Oct 15 Python
Python机器学习之基于Pytorch实现猫狗分类
Jun 08 Python
如何用六步教会你使用python爬虫爬取数据
Apr 06 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
php中显示数组与对象的实现代码
2011/04/18 PHP
PHP生成条形图的方法
2014/12/10 PHP
javascript据option的value值快速设定初始的selected选项
2007/08/13 Javascript
JavaScript 调试器简介
2009/02/21 Javascript
jQuery 性能优化指南(3)
2009/05/21 Javascript
firefo xml 读写实现js代码
2009/06/11 Javascript
js使用removeChild方法动态删除div元素
2014/08/01 Javascript
AspNet中使用JQuery上传插件Uploadify详解
2015/05/20 Javascript
浅谈Javascript数组的使用
2015/07/29 Javascript
javascript下拉列表中显示树形菜单的实现方法
2015/11/17 Javascript
快速掌握Node.js事件驱动模型
2016/03/21 Javascript
如何使用jquery修改css中带有!important的样式属性
2016/04/28 Javascript
在JavaScript中模拟类(class)及类的继承关系
2016/05/20 Javascript
jquery mobile界面数据刷新的实现方法
2016/05/28 Javascript
全面了解JavaScript的数据类型转换
2016/07/01 Javascript
JS实现环形进度条(从0到100%)效果
2016/07/05 Javascript
JS实现全屏预览F11功能的示例代码
2018/07/23 Javascript
微信小程序实现横向增长表格的方法
2018/07/24 Javascript
Mpvue中使用Vant Weapp组件库的方法步骤
2019/05/16 Javascript
[01:15]PWL S2开团时刻第二期——他们杀 我就白给
2020/11/25 DOTA
Windows下PyMongo下载及安装教程
2015/04/27 Python
python中lambda与def用法对比实例分析
2015/04/30 Python
在Python的Django框架中编写错误提示页面
2015/07/22 Python
matplotlib中legend位置调整解析
2017/12/19 Python
pandas数据分组和聚合操作方法
2018/04/11 Python
朴素贝叶斯Python实例及解析
2018/11/19 Python
使用CSS3的背景渐变Text Gradient 创建文字颜色渐变
2014/08/19 HTML / CSS
Skechers越南官方网站:来自美国的运动休闲品牌
2021/02/22 全球购物
公务员转正鉴定材料
2014/02/11 职场文书
群教班子对照检查材料
2014/08/26 职场文书
奥巴马上海演讲稿
2014/09/10 职场文书
努力学习保证书
2015/02/26 职场文书
雷锋观后感
2015/06/10 职场文书
《打电话》教学反思
2016/02/22 职场文书
解决thinkphp6(tp6)在状态码500下不报错,或者显示错误“Malformed UTF-8 characters”的问题
2021/04/01 PHP
Android移动应用开发指南之六种布局详解
2022/09/23 Java/Android