
Anh Tuan
Data Science Expert
ScrapeGraph AI は、LLM とグラフベースのロジックを利用して、ウェブサイトとローカルドキュメント(XML、HTML、JSON、Markdown などを含む)のスクレイピングパイプラインを構築する Python のウェブスクレイピングライブラリです。抽出したいデータを指定するだけで、ライブラリがすべてを処理します!
このライブラリは、次の機能を提供します。
ScrapeGraph AI の使用を開始する前に、次のものがインストールされていることを確認してください。
pip install scrapegraphai capsolver
playwright install
import json
from scrapegraphai.graphs import SmartScraperGraph
# スクラピングパイプラインの構成を定義します
graph_config = {
"llm": {
"api_key": "YOUR_OPENAI_APIKEY",
"model": "openai/gpt-4o-mini",
},
"verbose": True,
"headless": False,
}
# SmartScraperGraph インスタンスを作成します
smart_scraper_graph = SmartScraperGraph(
prompt="List me all the quotes with their description",
source="https://quotes.toscrape.com/",
config=graph_config
)
# パイプラインを実行します
result = smart_scraper_graph.run()
print(json.dumps(result, indent=4))
import json
from scrapegraphai.graphs import SmartScraperGraph
# スクラピングパイプラインの構成を定義します
graph_config = {
"llm": {
"model": "ollama/llama3.1",
"temperature": 0,
"format": "json", # Ollamaでは、形式を明示的に指定する必要があります。
# "base_url": "http://localhost:11434", # ollama URLを任意に設定します。
},
"verbose": True,
"headless": False
}
# SmartScraperGraph インスタンスを作成します
smart_scraper_graph = SmartScraperGraph(
prompt="List me all the quotes with their description",
source="https://quotes.toscrape.com/",
config=graph_config
)
# パイプラインを実行します
result = smart_scraper_graph.run()
print(json.dumps(result, indent=4))
このセクションでは、Capsolver を ScrapeGraph AI と統合して CAPTCHA を回避する方法について説明します。Capsolver は、ウェブサイトで一般的に使用されている ReCaptcha V2 を含む、さまざまなタイプの CAPTCHA の解決を支援する外部サービスです。
Capsolver を使用して ReCaptcha V2 を解決し、CAPTCHA の解決が最初に必要なページのコンテンツをスクレイピングする手順を紹介します。
最高のCAPTCHAソリューションのボーナスコードを請求してください。Capsolver: scrape. コードを適用すると、次回のチャージ後、5% のボーナスが加算されます。 無制限

import capsolver
import os
import json
from scrapegraphai.graphs import SmartScraperGraph
# 環境変数を使い、機密情報を取り扱います。
PROXY = os.getenv("PROXY", "http://username:password@host:port")
capsolver.api_key = os.getenv("CAPSOLVER_API_KEY", "Your Capsolver API Key")
PAGE_URL = os.getenv("PAGE_URL", "PAGE_URL")
PAGE_KEY = os.getenv("PAGE_SITE_KEY", "PAGE_SITE_KEY")
def solve_recaptcha_v2(url, key):
solution = capsolver.solve({
"type": "ReCaptchaV2Task",
"websiteURL": url,
"websiteKey": key,
"proxy": PROXY
})
return solution['solution']['gRecaptchaResponse']
def main():
print("Solving reCaptcha v2")
solution = solve_recaptcha_v2(PAGE_URL, PAGE_KEY)
print("Solution: ", solution)
# スクラピングパイプラインの構成を定義します
graph_config = {
"llm": {
"api_key": "YOUR_OPENAI_APIKEY",
"model": "openai/gpt-4o-mini",
},
"verbose": True,
"headless": False,
}
# SmartScraperGraph インスタンスを作成します
smart_scraper_graph = SmartScraperGraph(
prompt="Find the description of each quote.",
source="https://quotes.toscrape.com/",
config=graph_config
)
# パイプラインを実行します
result = smart_scraper_graph.run()
print(json.dumps(result, indent=4))
ScrapeGraph AI を使用すれば、プロキシや CAPTCHA の複雑さを処理しながら、効率的にウェブサイトをスクレイピングできます。Capsolver と組み合わせることで、ReCaptcha V2 の課題をシームレスに回避し、スクレイピングが困難なコンテンツにアクセスできるようになります。
このスクリプトを拡張して、自分のスクレイピングのニーズに合わせてカスタマイズし、ScrapeGraph AI が提供する追加機能を試してみてください。スクレイピング活動が、ウェブサイトの利用規約と法的ガイドラインを尊重していることを常に確認してください。
ハッピー・スクレイピング!
AWS WAFのチャレンジとキャプチャをブラウザなしで解決する方法を学びましょう。CapSolverのAPIを使用してトークンを生成し、405ステータスコードをバイパスします。

LinuxでPython、プロキシ、CAPTCHAの処理を使用してウェブスクレイピングをセットアップする。Scrapy、Playwright、CapSolver、およびデータパイプラインをカバーする実用的な開発者ガイド。

Cloudflareエラー1020 アクセスが拒否されましたとは何か、Webアプリケーションファイアウォールとボット検出の仕組み、そして開発者が正当な自動化ワークフローで誤検出を減らす方法を学びましょう。
