import PyPDF2
# 打开PDF文件
with open("example.pdf", "rb") as pdf_file:
# 创建PDF文件对象
pdf_reader = PyPDF2.PdfFileReader(pdf_file)
# 获取PDF文件中第一页
page = pdf_reader.getPage(0)
# 提取文本
text = page.extractText()
# 输出文本
print(text)
import PyPDF2
# 打开两个PDF文件
pdf_file1 = open("file1.pdf", "rb")
pdf_file2 = open("file2.pdf", "rb")
# 创建PDF文件对象
pdf_reader1 = PyPDF2.PdfFileReader(pdf_file1)
pdf_reader2 = PyPDF2.PdfFileReader(pdf_file2)
# 创建PDF文件写入对象
pdf_writer = PyPDF2.PdfFileWriter()
# 将第一个PDF文件的所有页面添加到写入对象中
for page in range(pdf_reader1.numPages):
pdf_writer.addPage(pdf_reader1.getPage(page))
# 将第二个PDF文件的所有页面添加到写入对象中
for page in range(pdf_reader2.numPages):
pdf_writer.addPage(pdf_reader2.getPage(page))
# 创建新的PDF文件
output_file = open("merged.pdf", "wb")
# 将写入对象中的页面写入到新的PDF文件中
pdf_writer.write(output_file)
# 关闭文件
pdf_file1.close()
pdf_file2.close()
output_file.close()
import PyPDF2
# 打开PDF文件
with open("example.pdf", "rb") as pdf_file:
# 创建PDF文件对象
pdf_reader = PyPDF2.PdfFileReader(pdf_file)
# 分割PDF文件
for page in range(pdf_reader.numPages):
# 创建PDF文件写入对象
pdf_writer = PyPDF2.PdfFileWriter()
# 获取页面
page_object = pdf_reader.getPage(page)
# 将页面添加到写入对象中
pdf_writer.addPage(page_object)
# 创建新的PDF文件
output_file_name = f"page_{page+1}.pdf"
output_file = open(output_file_name, "wb")
# 将写入对象中的页面写入到新的PDF文件中
pdf_writer.write(output_file)
# 关闭文件
output_file.close()
import PyPDF2
# 打开PDF文件
with open("example.pdf", "rb") as pdf_file:
# 创建PDF文件对象
pdf_reader = PyPDF2.PdfFileReader(pdf_file)
# 创建PDF文件写入对象
pdf_writer = PyPDF2.PdfFileWriter()
# 将所有页面添加到写入对象中
for page in range(pdf_reader.numPages):
pdf_writer.addPage(pdf_reader.getPage(page))
# 设置加密密码
pdf_writer.encrypt("password")
# 创建新的PDF文件
output_file = open("encrypted.pdf", "wb")
# 将写入对象中的页面写入到新的PDF文件中
pdf_writer.write(output_file)
# 关闭文件
output_file.close()
import PyPDF2
# 打开PDF文件
with open("example.pdf", "rb") as pdf_file:
# 创建PDF文件对象
pdf_reader = PyPDF2.PdfFileReader(pdf_file)
# 创建PDF文件写入对象
pdf_writer = PyPDF2.PdfFileWriter()
# 将所有页面旋转90度并添加到写入对象中
for page in range(pdf_reader.numPages):
page_object = pdf_reader.getPage(page)
page_object.rotateClockwise(90)
pdf_writer.addPage(page_object)
# 创建新的PDF文件
output_file = open("rotated.pdf", "wb")
# 将写入对象中的页面写入到新的PDF文件中
pdf_writer.write(output_file)
# 关闭文件
output_file.close()
import PyPDF2
# 打开PDF文件
with open("example.pdf", "rb") as pdf_file:
# 创建PDF文件对象
pdf_reader = PyPDF2.PdfFileReader(pdf_file)
# 创建PDF文件写入对象
pdf_writer = PyPDF2.PdfFileWriter()
# 打开水印文件
watermark_file = open("watermark.pdf", "rb")
# 创建水印文件对象
watermark_reader = PyPDF2.PdfFileReader(watermark_file)
# 获取水印文件的第一页
watermark_page = watermark_reader.getPage(0)
# 将所有页面添加到写入对象中,并添加水印
for page in range(pdf_reader.numPages):
page_object = pdf_reader.getPage(page)
page_object.mergePage(watermark_page)
pdf_writer.addPage(page_object)
# 创建新的PDF文件
output_file = open("watermarked.pdf", "wb")
# 将写入对象中的页面写入到新的PDF文件中
pdf_writer.write(output_file)
# 关闭文件
output_file.close()
watermark_file.close()
import PyPDF2
import pytesseract
from PIL import Image
# 打开PDF文件
with open("example.pdf", "rb") as pdf_file:
# 创建PDF文件对象
pdf_reader = PyPDF2.PdfFileReader(pdf_file)
# 遍历PDF文件中的所有页面
for page in range(pdf_reader.numPages):
# 获取当前页面
pdf_page = pdf_reader.getPage(page)
# 将当前页面转换为图像
img = pdf_page['/Resources']['/XObject'].getObject()[0]
img_data = img._data
img_mode = 'RGB' if img['/ColorSpace'] == '/DeviceRGB' else 'P'
img_size = (img['/Width'], img['/Height'])
img = Image.frombytes(img_mode, img_size, img_data)
# 使用pytesseract识别图像文字
text = pytesseract.image_to_string(img, lang='eng')
# 输出识别结果
print(text)