Agno : コンセプト :- ツールキット : Web スクレイピング (AgentQL, Browserbase, Firecrawl, Newspaper 等)

ツールキットはエージェントに追加できる関数のコレクションです。
ここでは、Web スクレイピング対応ツール AgentQL, Browserbase, Firecrawl, Newspaper, Newspaper4k, Oxylabs 等の使い方を説明します。

Agno : ユーザガイド : コンセプト : ツール – ツールキット : Web スクレイピング (AgentQL, Browserbase, Firecrawl, Newspaper 等)

作成 : クラスキャット・セールスインフォメーション
作成日時 : 08/03/2025
バージョン : Agno 1.7.5

* 本記事は docs.agno.com の以下のページを独自に翻訳した上で、補足説明を加えてまとめ直しています :

* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。

 

 

Agno ユーザガイド : コンセプト : ツール – ツールキット : Web スクレイピング : AgentQL

AgentQLTools は、エージェントが AgentQL API を使用して web サイトをブラウズしてスクレイピングすることを可能にします。

 

前提条件

後述の例は agentql ライブラリと AgentQL から取得可能な API トークンを必要とします。

pip install -U agentql
export AGENTQL_API_KEY=***

 

次のエージェントは web ブラウザを開いて、ページからすべてのテキストをスクレイピングします。

cookbook/tools/agentql_tools.py

from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools.agentql import AgentQLTools

agent = Agent(
    model=OpenAIChat(id="gpt-4o"), tools=[AgentQLTools()], show_tool_calls=True
)

agent.print_response("https://docs.agno.com/introduction", markdown=True)

Note : AgentQL will open up a browser instance (don’t close it) and do scraping on the site.

 

Agno ユーザガイド : コンセプト : ツール – ツールキット : Web スクレイピング : Browserbase

BrowserbaseTools はエージェントが Browserbase – ヘッドレス・ブラウザ・サービスを使用して、ブラウザ操作を自動化することを可能にします。

 

前提条件

後述の例は、ここでサインアップした後の Browserbase API クレデンシャルと Playwright ライブラリを必要とします。

pip install browserbase playwright
export BROWSERBASE_API_KEY=xxx
export BROWSERBASE_PROJECT_ID=xxx

 

次のエージェントは Browserbase を使用して https://quotes.toscrape.com にアクセスし、コンテンツを抽出します。それから web サイトの 2 ページ目に移動し、そこからも引用を取得します。

cookbook/tools/browserbase_tools.py

from agno.agent import Agent
from agno.tools.browserbase import BrowserbaseTools

agent = Agent(
    name="Web Automation Assistant",
    tools=[BrowserbaseTools()],
    instructions=[
        "You are a web automation assistant that can help with:",
        "1. Capturing screenshots of websites",
        "2. Extracting content from web pages",
        "3. Monitoring website changes",
        "4. Taking visual snapshots of responsive layouts",
        "5. Automated web testing and verification",
    ],
    markdown=True,
)

agent.print_response("""
    Visit https://quotes.toscrape.com and:
    1. Extract the first 5 quotes and their authors
    2. Navigate to page 2
    3. Extract the first 5 quotes from page 2
""")

Note : View the Startup Analyst MCP agent

 

Agno ユーザガイド : コンセプト : ツール – ツールキット : Web スクレイピング : Firecrawl

Agno で Firecrawl を使用して web をスクレイピング/クロールします。

FirecrawlTools はエージェントが web クローリングとスクレイピングのタスクを実行できるようにします。

 

前提条件

後述の例は firecrawl-py ライブラリと、Firecrawl から取得できる API キーを必要とします。

pip install -U firecrawl-py
export FIRECRAWL_API_KEY=***

 

次のエージェントは https://finance.yahoo.com のコンテンツをスクレイピングして、コンテンツの要約を返します :

cookbook/tools/firecrawl_tools.py

from agno.agent import Agent
from agno.tools.firecrawl import FirecrawlTools

agent = Agent(tools=[FirecrawlTools(scrape=False, crawl=True)], show_tool_calls=True, markdown=True)
agent.print_response("Summarize this https://finance.yahoo.com/")

 

Agno ユーザガイド : コンセプト : ツール – ツールキット : Web スクレイピング : Newspaper

NewspaperTools はエージェントが Newspaper4k ライブラリを使用してニュース記事を読むことを可能にします。

 

前提条件

後述の例は newspaper3k ライブラリを必要とします。

pip install -U newspaper3k

 

次のエージェントは言語モデルに関する wikipedia 記事を要約します。

cookbook/tools/newspaper_tools.py

from agno.agent import Agent
from agno.tools.newspaper import NewspaperTools

agent = Agent(tools=[NewspaperTools()])
agent.print_response("Please summarize https://en.wikipedia.org/wiki/Language_model")

 

Agno ユーザガイド : コンセプト : ツール – ツールキット : Web スクレイピング : Newspaper4k

Newspaper4k はエージェントが Newspaper4k ライブラリを使用してニュース記事を読むことを可能にします。

 

前提条件

後述の例は newspaper4k と lxml_html_clean ライブラリを必要とします。

pip install -U newspaper4k lxml_html_clean

 

次のエージェントは記事: https://www.rockymountaineer.com/blog/experience-icefields-parkway-scenic-drive-lifetime を要約します。

cookbook/tools/newspaper4k_tools.py

from agno.agent import Agent
from agno.tools.newspaper4k import Newspaper4kTools

agent = Agent(tools=[Newspaper4kTools()], debug_mode=True, show_tool_calls=True)
agent.print_response("Please summarize https://www.rockymountaineer.com/blog/experience-icefields-parkway-scenic-drive-lifetime")

 

Agno ユーザガイド : コンセプト : ツール – ツールキット : Web スクレイピング : Oxylabs

OxylabsTools は SERP, Amazon 製品データとユニバーサル web スクレイピング・エンドポイントを含む、Oxylabs の強力な web スクレイピング機能へのアクセスをエージェントに提供します。

 

前提条件

pip install -U oxylabs-sdk

クレデンシャルを環境変数として設定します (推奨) :

export OXYLABS_USERNAME=your_oxylabs_username
export OXYLABS_PASSWORD=your_oxylabs_password

 

from agno.agent import Agent
from agno.tools.oxylabs import OxylabsTools

agent = Agent(
    tools=[OxylabsTools()],
    markdown=True,
    show_tool_calls=True,
)

agent.print_response("""
Search for 'latest iPhone reviews' and provide a summary of the top 3 results. 
""")

 

以上