paulpierre/markdown-crawler
A multithreaded 🕸️ web crawler that recursively crawls a website and creates a 🔽 markdown file for each page, designed for LLM RAG
What it solves
markdown-crawler 旨在简化将网站内容转换为适合大型语言模型(LLM)使用的格式的过程。它通过递归爬取站点并将每个页面转换为干净、结构化的 markdown 文件,解决了混乱的 HTML 难以被 LLM 处理和切分的问题。
How it works
该工具采用多线程方式递归爬取网站,深度可自定义。它使用 BeautifulSoup 进行 HTML 解析,使用 markdownify 库将 HTML 内容转换为 markdown。用户可以通过 CLI 或在 Python 代码中作为库使用,利用 CSS 选择器定义目标内容,排除特定路径,并使用类似浏览器的 User‑Agent 绕过基础的 JavaScript 检查。
Who it’s for
此工具主要面向构建 RAG(检索增强生成)流水线的开发者、为 LLM 微调创建数据集的人员,或为 AI 代理构建专业知识库的开发者。
Highlights
- Multithreaded Crawling:通过并行处理实现更快的数据收集。
- RAG-Ready:对文档进行规范化,便于按标题、段落或句子进行切分。
- Customizable Filtering:支持 CSS 选择器、域名匹配和路径排除进行内容过滤。
- Resumable Scraping:能够从上次中断的地方继续爬取。
- CLI and Library Support:既可作为独立的命令行工具使用,也可集成到 Python 项目中作为库使用。