Web スクレイピング
Google 検索の結果、Web ページやサイトのテキスト、RSS や Atom フィードの項目、TikTok の投稿を取得し、JSON として AI ノードやリストのノードに渡します。
Web スクレイピング(Web Scrape)ノードは、Web からコンテンツを取得し、項目の JSON リストとして返します。ソースは 4 つあります。Google 検索の結果、Web ページまたはサイト全体のテキスト、RSS や Atom フィードの項目、TikTok プロフィールの最近の投稿です。結果をプロンプト(Prompt)ノードに接続すると、要約や書き換えができます。フィールドを抽出(Extract Field)に接続すると、項目ごとに 1 回ずつ生成を実行できます。
使いどころ
- キーワードの検索結果を、コンテンツ制作のワークフローに取り込みます。
- Web ページやサイトを Markdown として読み取り、プロンプトノードで要約したり、事実を抽出したりします。
- ニュースサイト、ブログ、YouTube チャンネルの最新の項目を、スケジュールに従って読み取ります。
- TikTok プロフィールの最近の投稿を集めて、分析や新しいアイデアに役立てます。
クイックスタート
ノードを追加する
キャンバス上で Tab を押し、自動化 › コンテンツ取得 › Web スクレイピングを選びます。
ソースを選ぶ
設定パネルを開き、ソースを選んで、そのフィールドを入力します。たとえば、Google Search ではクエリを入力します。実行ボタンには、そのソースの料金が表示されます。
実行する
実行をクリックします。最初のいくつかの項目がノードに表示され、設定パネルの結果タブにすべての項目が一覧表示されます。
ソース
| ソース | 返すもの | フィールド |
|---|---|---|
| Google Search | クエリに対する最大 10 件の検索結果 | クエリ。最大結果数:1〜10、デフォルトは 5。国コード:結果を地域に合わせるための、us のような 2 文字のコード。 |
| Web サイトのコンテンツ(Markdown) | 1 ページ、またはサイトの最大 20 ページのテキスト(Markdown 形式) | 開始 URL:ブラウザーに入力するときと同じアドレス。https:// は省略できます。クロールモード:単一ページ(デフォルト)か、開始アドレスからサイト内のリンクをたどるサイトをクロール、最大 20 ページ。 |
| RSS フィード | RSS または Atom フィードの項目 | フィードの URL:https:// は付けても付けなくてもかまいません。結果の上限:1〜50、デフォルトは 10。 |
| TikTok | プロフィールの最近の投稿、または 1 件の投稿 | プロフィールまたは投稿の URL:https:// は付けても付けなくてもかまいません。結果の上限:1〜20、デフォルトは 10。 |
どのテキストフィールドでも {} を使えます。URL/クエリ入力にノードが接続されていると、そのノードのテキストが {} に入ります。これにより、テキスト(Text)ノードやリスト(List)ノードで、クエリやアドレスを指定できます。
RSS と Atom のフィード
RSS フィードソースは、RSS 2.0(古い 0.9x と 1.0 を含む)と Atom の、両方のフィード形式を読み取ります。YouTube チャンネルのフィード(https://www.youtube.com/feeds/videos.xml?channel_id=...)、GitHub の releases.atom フィード、ほとんどのブログプラットフォームが公開しているフィードにも対応しています。
フィードの形式にかかわらず、どの項目にも同じ 5 つのフィールドがあります。
| フィールド | 内容 |
|---|---|
title | 項目のタイトル |
url | 項目へのリンク。項目にリンクがない場合は空になります。 |
description | 項目の概要または本文。HTML を含むことがあります。 |
pubDate | 公開日。日付を読み取れる場合は ISO 8601 形式 |
guid | 項目の一意の ID。ID がない場合はリンク |
フィードのサーバーに一時的な問題がある場合、ノードは再試行し、30 秒以内に最大 3 回までリクエストを送ります。時間切れになった実行は、「RSS fetch timed out」というエラーで失敗します。Web ページやエラーページなど、フィード以外のものを返すアドレスでは、実行が失敗します。エラーには、そのアドレスが何を返したかが示されます。
結果
実行が終わると、ノードに最初のいくつかの項目が表示されます。設定パネルの結果タブには、すべての項目が一覧表示されます。表示はリストと生の JSON を切り替えられ、JSON をコピーと JSON をダウンロードのボタンもあります。各項目には、検索結果のページ、フィードの項目、TikTok の動画など、取得元へのリンクがあります。結果を使う前に、リンク先で内容を確認してください。
出力の JSON は、項目のリストです。よくある使い方は次の 3 つです。
- 要約する、書き換える:プロンプトノードのプロンプト入力に接続します。JSON はテキストとして渡されます。
- 1 つのフィールドを取り出す:フィールドを抽出に接続します。たとえば、フィードのすべての項目の
titleを、リストとして取得できます。 - 項目ごとに 1 回実行する:抽出した値のリストを生成ノードに送ると、ノードは値ごとに 1 回ずつ実行されます。リストとバッチ処理を参照してください。
クレジット
| ソース | 1 回の実行あたりのクレジット |
|---|---|
| Google Search | 30 |
| Web サイトのコンテンツ(単一ページ) | 10 |
| Web サイトのコンテンツ(サイトのクロール) | 50 |
| RSS フィード | 10 |
| TikTok | 10 |
ノードの実行ボタン、各クロールモードの横の料金、ワークフローの実行の合計には、いずれも実際に支払う料金が表示されます。
- 失敗した実行のクレジットは、全額返還されます。
- 何も見つからなかった実行には、料金がかかります。実行自体は完了しているため、そのソースの料金がかかります。ノードには、空の結果と並んで、最後に成功した結果が残ります。RSS フィードソースでは、フィードとして正しく読み取れても項目がない場合は、何も見つからなかったものとして扱われます。
時間のかかるクロール
サイトのクロールは最大 20 ページをたどるため、数分かかることがよくあります。エディターでも、ワークフローの実行でも、特に操作は必要ありません。ノードが待機し、クロールが終わるとページがノードに表示されます。バックグラウンドでクロールが終わった後にワークフローを開き直した場合も、結果は表示されます。
セルフホスティング環境では、Google Search、Web サイトのコンテンツ、TikTok の各ソースに、プロバイダーキーで説明している Web スクレイピング用のキーか、Nodaro Cloud への接続が必要です。RSS フィードソースには、どちらも必要ありません。
ヒント
- まず 1 ページで試す:サイトをクロールに料金を払う前に、単一ページで、サイトが役に立つテキストを返すかを確認します。
- 定期的に取得する:毎日のダイジェストや、ニュースに合わせて動くワークフローには、スケジュールトリガー(Schedule Trigger)をワークフローに追加します。
- 必要なものだけを残す:項目ごとに 1 回実行されるノードの前で、
titleなどのフィールドを 1 つだけ抽出します。そうすると、各実行に短く整ったテキストが渡されます。
API から
POST /v1/web-scrape で、コードからノードを実行できます。サイトのクロールは、1 回の HTTP リクエストの上限である約 100 秒を超えることがあるため、クロールでは "respondAsync": true を送ってください。この場合、呼び出しはすぐに jobId を返します。ページは、完了したジョブから GET /v1/jobs/:id で読み取ります。このフラグを付けない場合、リクエストはスクレイピングが終わるまで開いたままになります。リクエストの上限を超えたクロールは、ジョブ自体は完了して料金も請求されますが、応答が途中で切断されます。単体のノードを実行するとジョブを参照してください。
よくある質問
関連ページ
プロンプト
フィールドを抽出
スケジュールトリガー
リスト
自動化
最終更新