> ## Documentation Index
> Fetch the complete documentation index at: https://www.octoparse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# ノーコードビルダー

> Octoparseで要素を選択し、アクションを追加することで、コードを書かずにカスタムWebスクレイピングワークフローを構築できます。

ノーコードビルダーでは、Webサイトを視覚的に操作しながらカスタム抽出ワークフローを作成できます。スクレイパーのコードを書く代わりに、ページ要素を選択し、クリック、ループ、ページネーション、スクロール、待機、データ抽出などのワークフローアクションを追加します。

テンプレートや自動検出が対象サイトやデータ要件に完全には合わない場合に使用します。

## 対応できるシナリオ

<Columns cols={2}>
  <Card title="繰り返しリストを抽出する">
    検索結果、ディレクトリ、商品グリッド、表から繰り返し項目を抽出します。
  </Card>

  <Card title="詳細ページへ遷移する">
    各項目をクリックして追加フィールドを収集し、一覧に戻ります。
  </Card>

  <Card title="ページを移動する">
    ページを切り替えたり、さらに結果を読み込んだり、スクロールして動的コンテンツを表示します。
  </Card>

  <Card title="フィールド値をカスタマイズする">
    フィールドを手動で選択し、エクスポート前に抽出値を整形します。
  </Card>
</Columns>

ノーコードビルダーは、次のような場合に使用します。

* 適したテンプレートがない
* 自動検出でフィールドやページ操作を拾いきれない
* ワークフローで詳細ページへの遷移が必要
* Webサイトが独自のページネーションや無限スクロールを使っている
* ポップアップ、メニュー、タブ、ログイン手順を処理する必要がある
* エクスポート前にフィールド単位のクレンジングが必要

## 基本フロー

<Steps>
  <Step title="ページを開く">
    収集したいデータが含まれるURLから開始します。
  </Step>

  <Step title="要素を選択する">
    抽出ワークフローを定義するデータフィールド、ボタン、リンク、リスト項目をクリックします。
  </Step>

  <Step title="アクションを選ぶ">
    データ抽出、クリック、ループアイテム、ページネーション、スクロール、待機などのアクションを追加します。
  </Step>

  <Step title="ワークフローを確認する">
    アクションの順序を確認し、タスクが意図したページ遷移に沿っているか確認します。
  </Step>

  <Step title="テスト実行する">
    本番実行の前に少量のサンプルを実行し、出力を確認します。
  </Step>
</Steps>

## よく使うアクション

| アクション      | 用途                                                                                                                                                 |
| ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| Webページを開く  | 抽出ワークフローを開始する対象URLを読み込みます。<br /><sub>複数の類似URLから抽出する場合は、ループと組み合わせて各URLを順に処理します。</sub>                                                               |
| データを収集     | テキスト、リンク、画像URL、属性、その他のフィールド値を取得します                                                                                                                 |
| クリック       | リンク、ボタン、タブ、メニュー、詳細ページを開きます                                                                                                                         |
| ループ        | リスト内の項目に対してアクションを繰り返します                                                                                                                            |
| テキストを入力    | ページ上の入力欄にテキストを入力します。<br /><sub>Webサイトで手動認証が必要な場合、ログイン情報の入力にも使用します。</sub>                                                                           |
| ページネーション   | 複数ページに分かれた結果を移動します                                                                                                                                 |
| スクロール      | スクロール後に表示されるコンテンツを読み込みます。<br /><sub>ページ全体のスクロール（デフォルト）と、特定エリア内のスクロール（部分スクロール）に対応しています。スクロール回数、待機時間、追加コンテンツが読み込まれなくなった時点でループを自動終了する設定を指定できます。</sub> |
| 待機         | 動的コンテンツの読み込み完了を待ちます                                                                                                                                |
| データをクリーニング | フィールド値を整形したり、一部を抽出したりします                                                                                                                           |

## セレクターを手動編集する

デフォルトの要素選択で目的のデータを取得できない場合は、基になるXPathを直接編集できます。これは次のような場合に役立ちます。

* 自動生成されたセレクターの範囲が広すぎる、または狭すぎる
* 表示テキストではなく、`href`、`src`、`data-price`など特定の属性を対象にしたい
* 項目ごとにページ構造が少し異なり、デフォルトのセレクターでは一部の行を取得できない

セレクターを編集するには、ワークフロー内のフィールドをクリックし、[XPath編集モード](/docs/jp/academy/xpath-css-selectors)に切り替えます。保存前に、変更したセレクターをライブページでテストできます。

## トラブルシューティング

| 問題                       | 考えられる原因                     | 試すこと                               |
| ------------------------ | --------------------------- | ---------------------------------- |
| 要素を選択できない                | 要素がiframeまたはShadow DOM内にある  | 先にiframeへ切り替えるか、内蔵ブラウザでページ構造を確認します |
| 選択した要素が空の値を返す            | コンテンツがページ描画後に動的に読み込まれている    | 抽出ステップの前に待機アクションを追加します             |
| ループで重複行が抽出される            | ループセレクターが重なった範囲に一致している      | より具体的なコンテナを対象にするよう、ループXPathを絞り込みます |
| ページネーションが途中で止まる          | 次ページボタンのセレクターが後続ページで一致していない | 最終ページ付近でボタンのclassや位置が変わるか確認します     |
| プレビューでは正しいがエクスポート後に値が崩れる | フィールド値に非表示HTMLや余分な空白が含まれている | データをクリーニングして、エクスポート前にトリミングや整形を行います |

## ベストプラクティス

* 本番実行の前に少量のサンプルで開始します。
* わかりやすいフィールド名を使用します。
* 値が表示テキスト、リンク、画像、属性、HTMLのどこから取得されているか確認します。
* コンテンツが動的に読み込まれる場合は待機を追加します。
* ワークフローはできるだけシンプルに保ちます。
* 対象Webサイトが変更された後は再テストします。

<Note>
  ノーコードビルダーは、Webサイトの構造に基づいて繰り返し実行できるワークフローを作成します。Webサイトが大きく変わった場合は、タスクの調整が必要になることがあります。
</Note>

## 関連ページ

<Columns cols={3}>
  <Card title="テンプレート" href="/docs/jp/platform/templates">
    一般的なWebサイト向けの事前構築済みワークフローから開始します。
  </Card>

  <Card title="自動検出" href="/docs/jp/platform/auto-detect">
    Octoparseがページをスキャンし、開始用ワークフローを自動生成します。
  </Card>

  <Card title="データ整形" href="/docs/jp/platform/refine-data">
    エクスポート前に抽出フィールドをクリーニング、整形します。
  </Card>
</Columns>
