PDF Text Extractor - Bulk PDF to Text, Metadata & Search
Pricing
Pay per usage
PDF Text Extractor - Bulk PDF to Text, Metadata & Search
Extract text and metadata from PDFs in bulk: give PDF URLs or web pages that link to PDFs. Get full text or one item per page, title, author, dates, page and word counts, keyword hits with page numbers and snippets, and a flag for scanned PDFs. Ideal for RAG, LLM and research pipelines.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Paper & Linen Studio
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
PDF Text Extractor – Bulk PDF to Text, Metadata & Keyword Search
Turn any list of PDF links into clean, searchable text. Paste PDF URLs or web pages that link to PDFs (report archives, download pages, investor-relations pages). You get one dataset row per PDF, or one row per page:
- Full text from the PDF's text layer, cleaned up: hyphenated line breaks are joined, soft hyphens removed and whitespace collapsed
- Per-page output (
outputMode: "page") with page numbers, ready for RAG chunking, embeddings and citations - Metadata: title, author, subject, keywords, creator/producer, creation and modification date, page count, file size, encryption
- Keyword search: words, phrases or
re:regular expressions, with page number and a text snippet for every hit and a count per term. Optionally return only PDFs that contain a term. - Scanned-PDF detection:
likelyScanned: truewhen the PDF has (almost) no text layer, so you know which files need OCR - PDF discovery: give a web page and the PDFs it links to are found automatically. You can limit them to the same site and cap how many are taken per page.
It needs no browser, no API key and no proxy. Large files are streamed with a size limit, and you can read only the first N pages of very long reports.
What you can use it for
- RAG and LLM pipelines: feed reports, manuals, papers and policies into a vector database, page by page with source and page number
- Research and monitoring: find every PDF on a downloads page that mentions "CO2", "Lieferkette" or a competitor, and see where it appears
- Procurement and tenders: extract tender documents and search them for deadlines, CPV codes or requirements
- Finance and investor relations: pull annual and sustainability reports, then search for key figures and terms
- Document inventories: list titles, authors, dates and page counts of all PDFs a website publishes, and spot outdated or scanned files
Input
| Field | Description |
|---|---|
urls | PDF links or web pages that link to PDFs |
searchTerms | Optional words/phrases (case-insensitive, whole words) or re: regex |
onlyMatching | Only return PDFs (or pages) with at least one hit. Skipped PDFs are not charged. |
outputMode | document (one item per PDF, default) or page (one item per page) |
findPdfLinks, sameSiteOnly, maxPdfsPerPage | PDF discovery on web pages (default: on, all sites, 20 per page) |
maxPagesPerPdf | Read only the first N pages (0 = all) |
maxTextLength | Truncate text per item (default 100,000 characters; textLength always shows the full length) |
cleanText | Text clean-up (default true) |
maxFileSizeMb, maxItems, maxConcurrency, timeoutSecs | Limits |
respectRobotsTxt | Honour robots.txt for scanned pages and the PDFs found on them (default true) |
{"urls": ["https://www.irs.gov/pub/irs-pdf/fw9.pdf", "https://www.irs.gov/forms-pubs/about-form-w-9"],"searchTerms": ["backup withholding", "re:\\bTIN\\b"],"maxPdfsPerPage": 5}
Output (real example, shortened)
{"url": "https://www.irs.gov/pub/irs-pdf/fw9.pdf","sourcePage": null,"fileName": "fw9.pdf","fileSizeBytes": 140815,"pageCount": 6,"pagesExtracted": 6,"encrypted": false,"title": "Form W-9 (Rev. March 2024)","author": "SE:W:CAR:MP","subject": "Request for Taxpayer Identification Number and Certification","creator": "Designer 6.5","createdAt": "2024-03-06T08:18:13","modifiedAt": "2024-03-06T08:18:13","likelyScanned": false,"emptyPages": 0,"text": "Form W-9\n(Rev. March 2024)\nRequest for Taxpayer\nIdentification Number and Certification\nDepartment of the Treasury …","textLength": 37692,"wordCount": 6278,"textTruncated": true,"matchedTerms": ["backup withholding"],"matchCounts": {"backup withholding": 33},"matches": [{"term": "backup withholding", "page": 1, "snippet": "appropriate box. The TIN provided must match the name given on line 1 to avoid backup withholding. For individuals, this is generally your social security number (SSN). However,"}],"error": null,"durationMs": 91,"extractedAt": "2026-11-03T13:52:12+00:00"}
In page mode each item has pageNumber, text, textLength, wordCount and the matches on that page. Failed downloads are returned with an error (e.g. HTTP 404, Not a PDF, PDF is password-protected, File larger than maxFileSizeMb). The key-value store record SUMMARY holds run totals.
Limitations
- No OCR. Scanned PDFs without a text layer return little or no text and are flagged with
likelyScanned: true. - Reading order follows the PDF's internal text order. Multi-column layouts and tables come out as plain text, not as structured tables.
- Password-protected PDFs are skipped. PDFs that are only encrypted against editing or printing are read normally.
- PDFs behind a login, cookie wall or JavaScript-only download button can't be reached. Use direct file links.
matchesis capped at 500 snippets per PDF;matchCountsalways has the full count.
Pricing
Free to use. You only pay for the Apify platform usage of your run, which is low because no browser is used.
Deutsch: Kurzbeschreibung
PDF Text Extractor: Text und Metadaten aus beliebig vielen PDFs extrahieren. Du gibst PDF-Links oder Webseiten an, auf denen PDFs verlinkt sind.
- Volltext oder ein Datensatz pro Seite (ideal für RAG/KI)
- Titel, Autor, Datum, Seitenzahl
- Stichwortsuche mit Seitenzahl und Textausschnitt
- Erkennung gescannter PDFs ohne Textebene
Kein Browser, kein API-Key. Ideal für Ausschreibungen, Geschäftsberichte, Handbücher und Recherche.