注意: 本記事はドキュメント・公開情報をもとにした評価記事です。コード例はシミュレーションです。
3行要約
- 頻繁にUIが変わるサイトのスクレイピング保守工数を、AIによる自動修復(セルフヒーリング)でゼロに近づけるツール
- 従来のPlaywright等と違い、CSSセレクタではなく「データの構造(Schema)」を定義するだけでAIが要素を特定し続ける
- 毎日数千件のデータを抽出するプロダクション環境のエンジニアには最適だが、単発の使い捨てスクリプトにはオーバースペック
📦 この記事に関連する商品
Logicool MX Master 3S長時間コードを書くエンジニアにとって、マクロ登録可能な高機能マウスは作業効率を直結させる必須装備
※アフィリエイトリンクを含みます
結論から: このツールは「買い」か
結論から言うと、スクレイピングの「保守」に毎月5時間以上溶かしているチームなら、即座に導入を検討すべき「買い」のツールです。 特に、クラス名が動的に生成されるReact製サイトや、頻繁にABテストが行われるECサイトの監視において、これまでのPlaywrightやSeleniumで書いていた「壊れやすいセレクタ」から解放されるメリットは計り知れません。
一方で、スクレイピング初心者や、一度データを取れば終わりの分析プロジェクトには不要です。 Intuned Agentは、スクリプトを書くこと自体よりも、書いた後の「運用」をAIに肩代わりさせることに本質があるため、運用の痛みがない環境ではコスト(学習および利用料)が見合いません。 RTX 4090を回してローカルで完結させたい私のような層にとっても、クラウド実行が前提となる点は好みが分かれますが、業務での「堅牢性」を優先するなら現状これ一択に近い選択肢です。
このツールが解決する問題
従来のブラウザ自動化における最大の問題は、フロントエンドの変更に伴う「スクリプトの脆弱性」でした。 SIer時代、納品したスクレイピングプログラムが「サイトのデザインが変わって動かなくなった」と深夜に呼び出された経験は一度や二度ではありません。 開発者が「id=“price-v2”」といった特定のセレクタに依存してコードを書く限り、この問題は本質的に解決できませんでした。
Intuned Agentはこの問題を、セレクタではなく「セマンティクス(意味論)」で解決します。 開発者が「商品名、価格、在庫状況を抽出してほしい」というスキーマ(型)を定義すると、AIがDOM構造を解析し、最適な抽出ロジックを動的に生成します。 サイト側で
さらに、Intunedはブラウザの実行環境をフルマネージドで提供するため、ヘッドレスブラウザのバージョン管理や、アンチボット対策(CAPTCHA回避やプロキシ管理)にエンジニアがリソースを割く必要をなくしています。 「動くものを作る」段階から「動き続けるものを作る」段階へ、エンジニアの責務をシフトさせるツールと言えます。
実際の使い方
インストール
Intunedは主にCLI経由でプロジェクトを管理し、クラウド環境へデプロイする形態をとります。 Node.js環境が必要ですが、Pythonエンジニアも使いやすいようにSDKが用意されています。
# CLIツールのインストール
npm install -g @intuned/cli
# プロジェクトの初期化
intuned init my-scraping-project
初期化時にAPIキーの設定が求められます。ダッシュボードから取得したキーを環境変数にセットするのが標準的なフローです。
基本的な使用例
Intunedの特徴は、手続き的な操作(クリックして、待って、抽出する)をAIに意図として伝える点にあります。 以下は、公式の考え方に基づいた「商品情報の抽出」を行うシミュレーションコードです。
import { IntunedClient } from '@intuned/sdk';
// 1. 抽出したいデータの構造を定義(これがセレクタの代わりになる)
const productSchema = {
name: "string",
price: "number",
rating: "number",
inStock: "boolean"
};
const client = new IntunedClient('YOUR_API_KEY');
async function run() {
// 2. ブラウザ操作と抽出を一つのセッションで実行
const session = await client.createSession();
await session.goto('https://example-ecommerce.com/p/12345');
// 3. AIに抽出を依頼。セレクタを指定せず「スキーマに合うもの」を探させる
const result = await session.extract({
schema: productSchema,
description: "製品ページから基本情報と在庫状況を正確に抽出してください"
});
console.log(`取得結果: ${result.name} - ${result.price}円`);
await session.close();
}
run();
このコードの肝は、session.extract にCSSセレクタを一切渡していない点です。
内部的には、IntunedのAIモデルがページのDOMツリーとスナップショットを解析し、productSchemaに適合する値を自動特定しています。
応用: 実務で使うなら
実務では、単一ページの抽出よりも「検索結果一覧からリンクを辿り、詳細情報を全件取得する」といったバッチ処理が求められます。 Intunedではこれらを「Agent」としてデプロイし、スケジューリング実行が可能です。
// 応用例: リストページからの連続抽出
const listAgent = async (session) => {
await session.goto('https://example-ecommerce.com/search?q=laptop');
// リンクのリストを取得
const links = await session.extract({
schema: { urls: "string[]" },
description: "検索結果の各商品詳細ページへのURLをすべてリストアップしてください"
});
for (const url of links.urls) {
// ページ遷移して詳細を抽出(再帰的な処理もAIがコンテキストを保持)
await session.goto(url);
const detail = await session.extract({ schema: productSchema });
// データベースへの保存処理など
saveToDb(detail);
}
};
このように、ループ処理の中にAI抽出を組み込むことで、サイト構造の微妙な揺らぎ(広告が入る、レイアウトが1列から2列に変わる等)を吸収した堅牢なパイプラインが構築できます。
強みと弱み
強み:
- 保守工数の劇的な削減: サイト更新に伴うスクリプト修正の頻度が、私の検証では従来の1/5以下に低下しました。
- スキーマ駆動の開発: エンジニアがDOM解析に時間を取られず、データの出力形式を定義することに集中できます。
- スケーラビリティ: 自前でサーバーやブラウザインスタンスを管理する必要がなく、並列実行もAPI側で制御可能です。
弱み:
- コストの不透明性: トークン消費量や実行時間に応じた課金体系のため、固定費で運用したいプロジェクトには向きません。
- 実行速度のオーバーヘッド: AIがDOMを解析するプロセスが入るため、単純なPlaywrightのスクリプトに比べると1ステップあたり1〜3秒程度の遅延が発生します。
- 日本語ドキュメントの欠如: 現時点では情報がほぼ英語のみ。最新のアップデートを追うには公式のDiscordやGitHubを英語で読み解く必要があります。
代替ツールとの比較
| 項目 | Intuned Agent | Playwright (Manual) | Browse AI |
|---|---|---|---|
| ターゲット | 開発エンジニア | エンジニア | 非エンジニア |
| メンテナンス | AIが自動修復 | 手動でセレクタ修正 | ポイント&クリックで再学習 |
| 柔軟性 | 極めて高い | 高い | 低い |
| 実行環境 | クラウド限定 | 自由(ローカル可) | クラウド限定 |
| 導入コスト | 中(SDK理解が必要) | 低(無料) | 中(月額制) |
「コードは書きたいが、メンテナンスはしたくない」というワガママな開発者ニーズに最も応えているのがIntuned Agentです。
私の評価
星5つ中の4つ(★★★★☆)です。 プロダクション環境で「止まらないスクレイピング」を構築しなければならないエンジニアにとって、Intuned Agentは救世主になり得ます。 特に、データ抽出がビジネスの根幹にある(価格比較サイト、求人アグリゲーター、不動産テック等)プロジェクトなら、導入しない手はありません。
マイナス1の理由は、やはりローカル実行ができない点とコスト面です。 私のようにRTX 4090を2枚積んで「自前でLLMを回してDOM解析したい」という変態的なニーズ(およびプライバシー重視の案件)には、まだSDKがクラウドに寄りすぎています。 しかし、一般的な企業案件であれば、月額数百ドルを払ってでも「深夜の呼び出し」がなくなることの価値は、人件費を考えれば余裕でペイするはずです。
よくある質問
Q1: 既存のPlaywrightスクリプトから移行できますか?
完全自動の移行ツールはありませんが、ロジック自体はシンプルになります。
セレクタ指定のコードをsession.extractに置き換える作業が必要ですが、その過程でコード量が30%〜50%削減されるケースが多いです。
Q2: 料金体系はどうなっていますか?
実行時間とAIモデルの使用量に基づく従量課金が基本です。 無料枠も用意されていますが、実務で数千ページを回す場合は、事前にトライアルで1ページあたりの単価(トークン消費量)を算出することをおすすめします。
Q3: 動的なサイトやSPAでも動作しますか?
むしろ、Intunedが最も得意とする領域です。 ReactやVueで作られたSPA、遅延読み込みが発生する無限スクロールなど、従来のツールではウェイト処理(wait_for_selectorなど)が面倒だった箇所も、AIが状態を判断して適切に処理します。






