- Certificate ID
- RV-13
- Published
- 30 May 2026
adbar / trafilatura
Result: Solid
01 Claim tested
Claims clean main-content extraction from any web page in three lines of Python, no API key or server. Install was clean and the markdown output was LLM-ready.
02 Measurements
| Criterion | Recorded |
|---|---|
| Install works | true |
| Claim Testable | true |
| Readme Accurate | true |
| Creator Notified | false |
| Errors Documented | true |
| Claim Tested Clean Env | true |
| Verdict Matches Evidence | true |
Recorded before the five-criterion scorecard.
03 Environment
- os
- macOS M-series
- user
- repoverifiertest
- docker
- false
- python
- 3.13
- api_key
- false
- install_method
- pip3 install trafilatura
As reported by the tester.
The version of the repo tested is recorded only if the tester listed it.
04 Observations
trafilatura is a Python library and CLI tool that extracts clean main content from web pages and returns it as plain text or markdown. No API key, no Docker, no server — just pip install and three lines of Python. The claim holds — install is clean, URL fetch works, markdown output is LLM-ready, and boilerplate is correctly stripped.
What Was Tested
Python library mode — the documented path for content extraction.
Environment:
- macOS M-series
- Python 3.13
- repoverifiertest user (clean environment)
- pip3 install trafilatura — no virtual environment needed
Install
pip3 install trafilatura
Clean install. No errors. No dependency conflicts on Python 3.13.
What Worked
Plain text extraction:
import trafilatura
downloaded = trafilatura.fetch_url('https://en.wikipedia.org/wiki/Python_(programming_language)')
text = trafilatura.extract(downloaded)
Returned clean article content. Navigation, sidebars, and boilerplate correctly stripped.Markdown output:
text = trafilatura.extract(downloaded, output_format='markdown')
Returned structured markdown with headers, bold text, and tables preserved — directly usable as LLM context.Real article extraction:
downloaded = trafilatura.fetch_url('https://paulgraham.com/writes.html')
text = trafilatura.extract(downloaded, output_format='markdown')
# LENGTH: 3121
Full article extracted cleanly. No noise.Honest Findings
Returns None on paywalled pages: TechCrunch article pages returned None. This is correct behavior — trafilatura does not bypass paywalls or render JavaScript.
Homepage extraction is minimal by design: TechCrunch homepage returned 517 characters — only content trafilatura was confident was "main content." Navigation teasers and promotional blocks were correctly excluded. This is the intended behavior for an LLM pipeline — you scrape article URLs, not homepages.
Works best on: open, text-based pages — blogs, documentation, Wikipedia, research articles, product pages.
Does not work on: paywalled content, JavaScript-rendered SPAs, pages requiring authentication.
What Was Not Tested
- CLI mode (
trafilatura -u "https://...") - Crawling mode (sitemap + batch processing)
- Metadata extraction (
trafilatura[metadata]) - XML/CSV output formats
Verdict: SOLID
The core claim — extract main text from web pages into LLM-ready format — works exactly as documented. Three-line install, three-line usage. No API key, no server, no Docker. Runs natively on macOS with Python 3.13.
05 Evidence
Founder's own run.
This review follows RepoVerifier Standard v1.0. Read the standard →