apify/crawlee-python

Crawlee—A web scraping and browser automation library for Python to build reliable crawlers. Extract data for AI, LLMs, RAG, or GPTs. Download HTML, PDF, JPG, PNG, and other files from websites. Works with Parsel, BeautifulSoup, Playwright, and raw HTTP. Both headful and headless mode. With proxy rotation.

解決する課題

Crawlee for Python は、現代のボット保護を回避し、人間のように動作する信頼性の高い高パフォーマンスなスクレイパーを構築するためのウェブスクレイピングおよびブラウザ自動化ライブラリです。リクエスト管理やボット検出の技術的複雑さを意識せずに、リンクのクロール、データの抽出、機械可読形式への保存を簡素化します。

動作方法

Crawlee は HTTP クロールとヘッドレスブラウザ自動化のための統合インターフェースを提供します。主に以下の2種類のクローラーを提供しています:

  • BeautifulSoupCrawler:HTTP ライブラリと BeautifulSoup を使用して HTML を解析する、ブラウザ不要の効率的なクローラー。静的コンテンツに最適です。
  • PlaywrightCrawler:Playwright 上で構築されたヘッドレスブラウザベースのクローラー。JavaScript の実行やユーザー操作が必要なサイトに使用します。

このライブラリはシステムリソースに基づいて並列クロールを管理し、自動リトライ、プロキシのローテーション、URL の永続キューを活用して、スクレイピングパイプラインが中断から再開できるようにします。

対象ユーザー

大規模なウェブデータ抽出が必要な開発者、特に Scrapy などの従来のフレームワークではなく、現代的な Python(3.10+)と非同期プログラミング(Asyncio)を好む開発者向けです。

特徴

  • 統合インターフェース:1つのライブラリで HTTP とヘッドレスブラウザクロールをサポート。
  • Asyncio ベース:Python の標準非同期ライブラリに基づき、高パフォーマンスを実現。
  • ボット保護の回避:デフォルト設定でクローラーが人間のように見えるようにし、検出を回避。
  • 状態の永続化:中断時に進捗を保存し、再起動時に最初からやり直す必要がありません。
  • 統合ツール:プロキシローテーション、セッション管理、テーブルデータおよびファイル用のプラグ可能なストレージを内蔵。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト