python-readability
python-readability 用 Mozilla 的 JS 库提取网页主内容。去广告,留文章。
https://github.com/CNSeniorious000/python-readability
实现¶
JS 引擎:Pyodide, PythonMonkey 等。返回 Article 对象。
用法
python from readability import parse article = parse(html)
深入洞见¶
这个库把 Mozilla 的抽取器包装为 Python API:parse()(见 src/readability/api/parse.py)负责把 HTML 交给 JS 实现并返回 Article 结构。实现层并不把提取逻辑翻译成纯 Python,而是把 JS 解析器(src/index.ts / 内嵌的 parse.cjs)作为核心,并通过 src/readability/impl/* 在运行时选择后端 — 比如 pyodide、pythonmonkey、mini_racer 或 node_subprocess,以适应不同部署环境。换言之,库在保证上游算法一致性的同时,把多种 JS 运行时的包装与错误/类型边界处理工程化了。
参考源码:src/readability/api/parse.py · src/readability/impl/__init__.py · src/index.ts
相关上游:Mozilla readability(JS 实现)
相关:
- mozilla/readability:JS 原版。
- readabilipy:纯 Py 版。
RAG 前处理利器。