Best Python libraries for reading and filling PDF files

Requested by a visitor · October 26, 2026

We asked 10 models: The best Python libraries for reading, editing and filling PDF files. Each named its own top 10.

Asked 4 ways: List request · Buyer asking for advice · Search query · Worth paying for?. Share of voice pools every wording.

Agreement between models
62%
Same model, run twice
77%
Different picks
21

When agreement between models is well below a model's agreement with itself, the split reflects real differences in taste rather than randomness.

The consensus

We asked 10 models: The best Python libraries for reading, editing and filling PDF files. Each named its own top 10.

Each cell is the position that model gave the pick; blank means it left the pick off. Click a row for each model's reasoning.

#PickScoreListed byClaude Haiku 5.5GPT-6 LunaGemini 4 ArgonQwen 3.8 FlashDeepSeek V4.1 FlashGLM-5.3Kimi K3MiniMax M3Mistral Large 4Nemotron 3.5 Super VL

6 lower-scoring picks are not shown; every ballot below lists them in full.

Most divisive

Picks most models listed, at very different positions

Hot takes

Picks that appear on only one ballot

Every ballot

Hover a pick to find it on the other ballots. Marked picks appear on no other ballot.

Claude Haiku 5.5

  1. pypdf
  2. pdfplumber
  3. PyMuPDF
  4. pdfrw
  5. PyPDF2
  6. reportlab
  7. pikepdf
  8. fpdf2
  9. pdfminer.six
  10. borb

68% with consensus · 84% self-consistent · knowledge cutoff June 2026

GPT-6 Luna

  1. PyMuPDF
  2. pypdf
  3. pdfplumber
  4. borb
  5. pdfrw
  6. PDFium
  7. PyPDFForm
  8. pdfminer.six
  9. PyPDF2
  10. Camelot

74% with consensus · 72% self-consistent · knowledge cutoff May 18, 2026

Gemini 4 Argon

  1. PyMuPDF
  2. pypdf
  3. pikepdf
  4. pdfplumber
  5. pypdfium2
  6. pdfrw
  7. borb
  8. reportlab
  9. fillpdf
  10. fpdf2

77% with consensus · 90% self-consistent · knowledge cutoff March 2026

Qwen 3.8 Flash

  1. PyMuPDF
  2. pypdf
  3. reportlab
  4. pdfplumber
  5. pdfrw
  6. pikepdf
  7. borb
  8. fpdf2
  9. pdfbox
  10. fillpdf

82% with consensus · 72% self-consistent · knowledge cutoff not published

DeepSeek V4.1 Flash

  1. PyMuPDF
  2. pypdf
  3. pdfplumber
  4. reportlab
  5. pdfrw
  6. pikepdf
  7. borb
  8. PyPDF2
  9. pdfminer.six
  10. fpdf2

90% with consensus · 77% self-consistent · knowledge cutoff not published

GLM-5.3

  1. PyMuPDF
  2. pdfplumber
  3. reportlab
  4. fpdf2
  5. pikepdf
  6. pypdf
  7. PyPDF2
  8. borb
  9. pdfminer.six
  10. fillpdf

86% with consensus · 60% self-consistent · knowledge cutoff not published

Kimi K3

  1. PyMuPDF
  2. pypdf
  3. reportlab
  4. pdfplumber
  5. pdfminer.six
  6. pdfrw
  7. borb
  8. pikepdf
  9. PDFQuery
  10. Aspose.PDF

80% with consensus · 69% self-consistent · knowledge cutoff not published

MiniMax M3

  1. PyMuPDF
  2. pdfplumber
  3. pypdf
  4. reportlab
  5. pikepdf
  6. borb
  7. pdfminer.six
  8. PyPDF2
  9. WeasyPrint
  10. fpdf2

94% with consensus · 86% self-consistent · knowledge cutoff not published

Mistral Large 4

  1. PyMuPDF
  2. pikepdf
  3. PyPDF2
  4. reportlab
  5. pdfplumber
  6. pdfminer.six
  7. pdfrw
  8. borb
  9. pdf2docx
  10. pdfkit

70% with consensus · 86% self-consistent · knowledge cutoff not published

Nemotron 3.5 Super VL

  1. PyPDF2
  2. pdfplumber
  3. reportlab
  4. pdfkit
  5. PyMuPDF
  6. pdfrw
  7. pypdf
  8. pdfminer.six
  9. fpdf2
  10. pikepdf

52% with consensus · 73% self-consistent · knowledge cutoff not published

Who agrees with whom

Overlap between two models' lists, weighted toward the top · 100 means identical · Color runs from 28 (lightest) to 92 (darkest)

Claude Haiku 5.5GPT-6 LunaGemini 4 ArgonQwen 3.8 FlashDeepSeek V4.1 FlashGLM-5.3Kimi K3MiniMax M3Mistral Large 4Nemotron 3.5 Super VL
Claude Haiku 5.5595663695658624151
GPT-6 Luna597577846077725233
Gemini 4 Argon567583836380736528
Qwen 3.8 Flash637783927591786341
DeepSeek V4.1 Flash698483927688866744
GLM-5.3566063757671856752
Kimi K3587780918871796642
MiniMax M3627273788685796847
Mistral Large 4415265636767666844
Nemotron 3.5 Super VL513328414452424744