I have an existing Python script whose sole purpose is data extraction: it turns PDF documents into CSV files. Right now the results are incomplete and the code is a little fragile. I need it tightened up so every piece of data in each PDF is captured and written to a clean, well-structured CSV. What I already have • A working—but imperfect—Python script • Sample PDFs that show the range of layouts the tool must handle • A sample CSV that illustrates the column order I expect What needs to improve • Reliable parsing across multiple pages and varied table structures • Accurate capture of every field, not just the obvious text blocks • Clear, readable code with comments so future tweaks are simple • A straightforward command-line call such as python pdf2csv.py input.pdf output.csv Useful libraries are entirely up to you—pdfplumber, PyPDF2, tabula-py, Camelot, pandas, or a combo—so long as the final script runs on standard Python 3 and requires only pip-installable packages. Deliverables 1. Updated script (single .py file or a small module) 2. Requirements.txt listing any external dependencies 3. One example CSV generated from my sample PDFs to prove full data coverage 4. Brief README with run instructions Acceptance Criteria • Running the script on my test PDFs produces a CSV that matches the source data exactly, column for column and row for row. • No hard-coded file paths; everything is parameterised. • Code executes without warnings or errors on Python 3.10 under Windows and Linux. Please keep the focus on robust extraction—the project’s primary goal—so I can drop new PDFs in and get accurate CSVs every time.