这个项目能做什么

Crawlee 是一个全面的 Python 网页抓取和浏览器自动化库,旨在帮助开发者快速构建可靠的爬虫。它提供了从 URL 发现到数据提取与存储的端到端爬取和抓取解决方案。 主要功能包括: - 为基于 HTTP 和无头浏览器的抓取提供统一接口 - 根据系统资源自动进行并行抓取 - 提供类型提示,改善开发者体验并减少错误 - 在出错或被拦截时自动重试 - 代理轮换和会话管理 - 可配置的请求路由,将 URL 定向到相应的处理器 - 用于抓取的持久化 URL 队列 - 可插拔的表格数据和文件存储 - 健壮的错误处理 Crawlee 提供两种主要的爬虫类型: - **BeautifulSoupCrawler**:使用 HTTP 库和 BeautifulSoup 进行 HTML 解析,非常适合在无需执行 JavaScript 的情况下高效提取数据 - **PlaywrightCrawler**:通过 Playwright 使用无头浏览器,适用于需要交互的 JavaScript 密集型网站 它支持多种解析库,包括 Parsel、BeautifulSoup 和原始 HTTP,并且可以下载 HTML、PDF、JPG、PNG 等文件。该库支持有头和无头两种模式。 与 Scrapy 相比,Crawlee 基于 asyncio,具有完整的类型提示,集成更简单(普通 Python 脚本),中断期间可保持状态持久化,并提供有组织的数据存储(数据集和键值存储)。 通过 pip 即可轻松安装,并带有可选扩展以支持额外功能。还提供 CLI 工具,可通过模板快速搭建项目。Crawlee 由 Apify 开发,可部署在 Apify 平台上进行云执行。 文档、指南和示例可在 Crawlee 项目网站上获取,同时也有 TypeScript 实现可供 JavaScript/TypeScript 项目使用。