如何用python插入独创性声明

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

一、代码分析

利用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))

运行效果如下:

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

写在最后

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

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

(0)

相关推荐

  • Python 如何在字符串中插入变量

    问题 你想创建一个内嵌变量的字符串,变量被它的值所表示的字符串替换掉. 解决方案 Python并没有对在字符串中简单替换变量值提供直接的支持. 但是通过使用字符串的 format() 方法来解决这个问题.比如: >>> s = '{name} has {n} messages.' >>> s.format(name='Guido', n=37) 'Guido has 37 messages.' >>> 或者,如果要被替换的变量能在变量域中找到, 那么你

  • Python操控mysql批量插入数据的实现方法

    在Python中,通过pymysql模块,编写简短的脚本,即方便快捷地控制MySQL数据库 一.连接数据库 使用的函数:pymysql.connect 语法:db=pymysql.connect(host='localhost',user='root',port=3306,password='Your password',db='database_name') 参数说明:host:MySQL服务器地址                           user:用户名             

  • python 使用xlsxwriter循环向excel中插入数据和图片的操作

    写入Excel中后有显示第一列客户款号总库存这些,开始写在第12行第一列开始写入,一行写入5个,然后再隔12行,再写入下边的数据,图片需要对应客户款号在Excel写入图片,类似下面的格式 import xlsxwriter import os #以空字符填充缺失值,不然写入数据会报错 data.fillna('',inplace=True) #创建一个新Excel文件并添加一个工作表. workbook = xlsxwriter.Workbook('images.xlsx') worksheet

  • 详解python tkinter 图片插入问题

    通过tkinter.PhotoImage插入GIF, PGM/PPM格式的图片. import tkinter class Gui: def __init__(self): self.gui=tkinter.Tk() # create gui window self.gui.title("Image Display") # set the title of gui self.gui.geometry("800x600") # set the window size

  • python简单实现插入排序实例代码

    Python中会遇到很多关于排序的问题,今天小编就带给大家实现插入排序的方法.在Python中插入排序的基本原理类似于摸牌,将摸起来的牌插入到合适位置.具体实现请看本文. 基本原理 类似于摸牌,将摸起来的牌插入到合适位置. 代码: # -*- coding: utf-8 -*- ''' 插入排序: 类似于摸牌,从牌堆中摸一张牌,和手中现有手牌比较.若大则放右边,小放左边. '' def insert_sort(input_list): if len(input_list)<=1: return

  • Python操作word文档插入图片和表格的实例演示

    前言 图片是Word的一种特殊内容,这篇文章主要介绍了关于Python操作word文档,向里面插入图片和表格的相关内容,下面话不多说了,来一起看看详细的代码 实例代码: # -*- coding: UTF8 -*- from docx import Document from docx.shared import Pt doc = Document() # 文件存储路径 path = "C:\\Users\\Administrator\\Desktop\\word文档\\" # 读取文

  • python 在mysql中插入null空值的操作

    python在mysql中插入null空值 sql = "INSERT INTO MROdata (MmeUeS1apId) VALUES (%s)"%'NULL' %s没有引号,可以将"null"中null写进数据库,达到NULL值效果. %s加引号 values就是字符串,导致类型错误,插入错误. sql = "INSERT INTO MROdata (MmeUeS1apId) VALUES ('%s')"%'NULL' 补充:数据库中的空值

  • python中的插入排序的简单用法

    现在大家学习python掌握内容了解太多太多,但是最重要的不是掌握了解算法的使用,而是了解算法原理远比使用算法命令更重要,现在大家了解算法应该都不低于5种了吧,比如排序算法.冒泡算法.归并算法等等,那对本期主题插入算法有过了解吗?如果没有了解的小伙伴可以跟着小编一起来了解学习. 插入排序简介: 将列表分为有序区和无序区两个部分,最初有序区只有一个元素,即第一个元素. 然后每次从无序区选择一个元素,插入到有序区中,直到无序区为空. 运行图示: 实现代码: # 选择排序 O(n2) def inse

  • python 插入Null值数据到Postgresql的操作

    数据库中最好插入Null值. 在python中,暂时没找到通过sql语句的方式插入Null值. 推荐使用轮子的方法 def insert_sample_data(self, values): # added self since you are referencing it below with self.con.cursor() as cur: sql = "insert into sampletable values (%s, %s, %s)" # Use %s for param

  • Python xlwings插入Excel图片的实现方法

    测试图片 一.相对路径(报错) 使用相对路径插入会报错(确认路径正确无误) import xlwings as xw wb = xw.Book() sht = wb.sheets['Sheet1'] sht.pictures.add('1.jpg') # 使用相对路径会报错 wb.save('test.xlsx') wb.close() File "<COMObject <unknown>>", line 5, in AddPicture pywintypes.

随机推荐