PDF Text Extractor — Text & Metadata from URLs avatar

PDF Text Extractor — Text & Metadata from URLs

Pricing

from $5.00 / 1,000 pdf extracteds

Go to Apify Store
PDF Text Extractor — Text & Metadata from URLs

PDF Text Extractor — Text & Metadata from URLs

Extract clean text and metadata from any PDF by URL: full text, page count, title, author, dates as JSON. Perfect for AI pipelines, RAG ingestion, document search and content analysis. No API key needed.

Pricing

from $5.00 / 1,000 pdf extracteds

Rating

0.0

(0)

Developer

Oaida Adrian

Oaida Adrian

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

a day ago

Last modified

Share

PDF Text Extractor — Text & Metadata from Any PDF URL

Extract clean plain text and full document metadata from any PDF — just paste the URLs. No API keys, no login, no proxies, no OCR setup. Point it at a list of PDF links and get back structured, LLM-ready text plus title/author/date/page metadata for every file.

Built for developers and data teams who need to turn scattered PDF documents — research papers, financial reports, whitepapers, manuals, invoices, legal filings — into clean structured data at scale.

Why this Actor

  • Zero configuration — no credentials, no proxy budget, no browser. Paste URLs, press run.
  • RAG-ready output — optional includePageTexts mode returns per-page text so you can chunk documents for embeddings without re-splitting.
  • Resilient by design — unreadable or password-protected files are skipped and logged, never crashing the run. A batch of 500 PDFs with 3 bad links still returns 497 clean items.
  • Handles big documents — multi-hundred-page files up to 100 MB each, including "secured" PDFs encrypted with an empty password.

How it works

Give it a list of direct PDF URLs. For each file the Actor downloads it, parses it with a battle-tested PDF engine, and outputs one dataset item per PDF with the full extracted text and all document metadata. Set maxPagesPerPdf to cap long files, or includePageTexts: true to also get an array with each page's text separately.

Input

{
"pdfUrls": [
"https://arxiv.org/pdf/1706.03762",
"https://bitcoin.org/bitcoin.pdf"
],
"maxPagesPerPdf": 0,
"includePageTexts": false
}
FieldTypeDescription
pdfUrlsarrayDirect URLs of PDF files (required)
maxPagesPerPdfintegerMax pages to extract per PDF; 0 = all pages
includePageTextsbooleanAlso output a per-page text array — ideal for RAG chunking

Output

One item per PDF:

{
"url": "https://arxiv.org/pdf/1706.03762",
"fileName": "1706.03762",
"fileSizeBytes": 2215244,
"numPages": 15,
"pagesExtracted": 15,
"text": "Attention Is All You Need ...",
"textLength": 39432,
"wordCount": 6120,
"title": "Attention Is All You Need",
"author": null,
"creator": "LaTeX with hyperref",
"producer": "pdfTeX-1.40.25",
"creationDate": "D:20240410010203Z",
"modDate": null,
"encrypted": false,
"pageTexts": null
}

With includePageTexts: true, pageTexts becomes ["page 1 text...", "page 2 text...", ...].

Use cases

  • 🤖 AI / RAG pipelines — turn PDFs into LLM-ready text; use pageTexts as natural chunk boundaries for embeddings.
  • 🔎 Document search & indexing — full text plus title/author/date metadata to power search over a PDF corpus.
  • 📊 Content & compliance analysis — word counts, page counts, and document properties across large batches.
  • 📚 Bulk research ingestion — pull hundreds of arXiv / SSRN papers or vendor whitepapers in one run.
  • 🧾 Report & invoice processing — extract the text layer from financial reports, statements, and structured invoices.

Run it from the API

Trigger the Actor and get results in one call:

curl -X POST "https://api.apify.com/v2/acts/darknezz~pdf-text-extractor/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"pdfUrls":["https://bitcoin.org/bitcoin.pdf"],"includePageTexts":true}'

Scheduling: attach an Apify Schedule (e.g. hourly) to keep a folder of report URLs continuously ingested into a dataset that feeds your pipeline.

Pricing

Pay per event: a small fee per PDF extracted, plus Apify's standard platform events (actor start + dataset item). Extracting 1,000 PDFs costs about $5 in event fees — no monthly minimum, you pay only for what you run.

FAQ

Does it OCR scanned PDFs? No — it extracts the embedded text layer. Scanned image-only PDFs return empty text (the item still includes metadata and page counts, so you can detect and route them to an OCR step).

Password-protected PDFs? Files encrypted with an empty password (common "secured" PDFs) are extracted automatically. User-password-protected files are skipped with a warning rather than failing the run.

What's the file size limit? 100 MB per file.

Can I limit pages for very long documents? Yes — set maxPagesPerPdf to any number; 0 extracts everything.

Do I need a proxy? No. The Actor downloads PDFs directly over HTTPS — no proxy or residential IP budget required.

What if one URL is broken? That file is skipped and logged; every other PDF in the batch still returns normally.