Create, read, edit, merge, split PDF files. Supports text extraction, table extraction, form filling, watermarks, OCR, and HTML-to-PDF conversion.
使用 pypdf、pdfplumber、weasyprint 和命令行工具完成 PDF 处理。支持所有常见 PDF 操作。
reader = PdfReader(document.pdf)
print(f页数: {len(reader.pages)})
writer = PdfWriter()
for pdf in [doc1.pdf, doc2.pdf]:
reader = PdfReader(pdf)
for page in reader.pages:
writer.add_page(page)
with open(merged.pdf, wb) as f:
writer.write(f)
HTML(string=
python
from pypdf import PdfReader
python
import pdfplumber
import pandas as pd
# 从第一页提取表格
page = pdf.pages[0]
tables = page.extract_tables()
for i, table in enumerate(tables):
print(f表格 {i+1}:)
for row in table:
print(row)
python
from pypdf import PdfWriter, PdfReader
for pdffile in inputfiles:
reader = PdfReader(pdf_file)
print(f正在添加 {pdf_file} ({len(reader.pages)} 页))
for page in reader.pages:
writer.add_page(page)
with open(output_file, wb) as f:
writer.write(f)
print(f✓ 已将 {len(inputfiles)} 个文件合并到 {outputfile})
python
from pypdf import PdfReader, PdfWriter
for i, page in enumerate(reader.pages):
writer = PdfWriter()
writer.add_page(page)
outputfile = f{outputprefix}page{i+1}.pdf
with open(output_file, wb) as f:
writer.write(f)
print(f✓ 已拆分为 {len(reader.pages)} 个文件)
for pagenum in pagenumbers:
writer.addpage(reader.pages[pagenum - 1])
with open(output_file, wb) as f:
writer.write(f)
print(f✓ 已提取页面 {page_numbers})
python
from pypdf import PdfReader, PdfWriter
for page in reader.pages:
page.rotate(rotation) # 90、180 或 270
writer.add_page(page)
with open(output_file, wb) as f:
writer.write(f)
for i, page in enumerate(reader.pages):
if i == 0: # 仅旋转第一页
page.rotate(90)
writer.add_page(page)
with open(output.pdf, wb) as f:
writer.write(f)
python
from weasyprint import HTML, CSS
This is a test document.
HTML(string=htmlcontent).writepdf(output.pdf)
python
from pypdf import PdfReader, PdfWriter
from io import BytesIO
from reportlab.pdfgen import canvas
def createwatermark(text, outputpath):
创建水印 PDF
packet = BytesIO()
c = canvas.Canvas(packet)
# 绘制文本
c.saveState()
c.translate(300, 400)
c.rotate(45)
c.setFont(Helvetica-Bold, 50)
c.setFillColorRGB(0.5, 0.5, 0.5, 0.3) # 灰色带透明度
c.drawCentredString(0, 0, text)
c.restoreState()
c.save()
packet.seek(0)
return PdfReader(packet)
for page in reader.pages:
page.mergepage(watermarkpage)
writer.add_page(page)
with open(output_file, wb) as
该技能支持在以下平台通过对话安装:
帮我安装 SkillHub 和 pdf-skill-1776104478 技能
设置 SkillHub 为我的优先技能安装源,然后帮我安装 pdf-skill-1776104478 技能
skillhub install pdf-skill-1776104478
文件大小: 5.72 KB | 发布时间: 2026-4-14 14:04