{"adoption": {"forks": 717, "observed_at": "2026-08-28T04:08:57.146636+00:00", "stars": 4698}, "canonical_url": "https://ross.abutalabs.com/products/textract", "card": {"archived": false, "artifact_type": "library", "description": "extract text from any document. no muss. no fuss.", "domain": ["files", "pdf", "data-science"], "enriched": true, "function": ["parser", "pdf", "ocr", "nlp", "file-system"], "health_score": 98, "homepage": "http://textract.readthedocs.io", "language": "HTML", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["deanmalmgren/textract"], "name": "deanmalmgren/textract", "platform": ["python", "cli", "cross-platform"], "pushed_at": "2026-08-26T03:57:20+00:00", "repo": "deanmalmgren/textract", "stars": 4698, "tags": ["text-extraction", "document-parsing", "docx", "pdf-to-text", "natural-language-processing"], "topics": ["python", "natural-language-processing", "data-mining", "text-mining"], "urls": [], "use_cases": ["extract text from pdf files in python", "convert word documents to plain text", "parse resumes from pdfs", "bulk extract text from many document formats", "get text out of powerpoint or html files", "preprocess documents for text mining"], "what_it_is": "A Python library that extracts text from virtually any document format (PDF, DOCX, PPTX, HTML, images, and more) through a simple unified interface. It wraps various parsers and external tools so users can get plain text from documents with a single function call.", "when_to_avoid": ["you need high-fidelity layout or table extraction from complex PDFs", "you want a pure-Python solution without system dependencies like antiword or pdftotext", "the project's maintenance pace is too slow for your production needs"], "when_to_choose": ["you need one uniform API for many document formats", "you want a quick command-line or Python way to pull text from files", "you are building a text-mining or NLP pipeline over mixed document types"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/textract", "repo": "deanmalmgren/textract", "role": "main", "score": 93}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:57.146636+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:19:14.073629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6c70badbe4c33ada17534d8f8eebeefbc069ae149da2f5cb00ad8f82c4cdfa38", "fetched_at": "2026-08-28T04:08:57.146636+00:00", "kind": "readme", "missing": false, "url": "https://github.com/deanmalmgren/textract"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 81}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4444, "days_push": 7, "days_rel": 128, "gap_med": 0, "n_releases_24m": 2}, "score": 93, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}