★ページの説明・概要
JobAutoのブラウザ操作「要素の繰り返し処理」で、Webページの一覧や表のうち、処理する要素の範囲を調整する方法を説明します。
一覧の一部しか繰り返し対象にならない場合や、不要な要素まで対象になる場合は、「取得範囲」「XPathの除外」「XPathのフィルター」「表示値のフィルター」を使い分けます。
このページでは、都道府県ごとに店舗名が表示されるWebページを例に設定方法を紹介します。アクションの作成方法や各設定項目の詳細は、要素の繰り返し処理の基本マニュアルをご確認ください。
1.都道府県別の店舗一覧を繰り返し処理する
以下のように東京・大阪・愛知などの店舗が並んでいるWebページを想定します。店舗名を一つずつ取得するため、「要素の繰り返し処理」アクションを作成します。

まず通常どおりに対象となる要素を選択し、繰り返し処理の設定画面を開きます。

2.対象が一部しか取得できない場合は「取得範囲」を確認する
同じ一覧に見えていても、設定した要素の範囲によっては、東京の店舗だけが繰り返し対象となり、大阪や愛知の店舗が含まれない場合があります。

その場合は、「取得範囲」で「拡張した範囲の要素」を選択します。現在の設定内容に近い要素まで検索範囲を広げるため、対象が増える場合があります。

変更後は「再読込」をクリックし、「繰り返しの対象リスト」に大阪や愛知の店舗も含まれたか確認してください。範囲を広げた結果、不要な要素が含まれた場合は、次の除外・フィルター設定で調整します。
3.不要な要素を「XPathの除外」で対象から外す
繰り返し対象に含めたくない要素がある場合は、「XPathの除外」を設定します。たとえば、一覧に混在している不要な見出しや特定の要素を除外したい場合に利用します。

XPathの除外は、指定条件に該当する要素を対象リストから外す設定です。必要な店舗まで除外していないか、再読込後の対象リストで確認してください。
4.「XPathのフィルター」で特定の要素だけに絞る
特定のHTML構造に一致する要素だけを処理したい場合は、「XPathのフィルター」を使用します。対象となる要素のXPathを指定して、繰り返す候補を絞り込みます。

「XPathの除外」は対象から外す設定、「XPathのフィルター」は対象に含める要素を絞る設定です。用途に応じて使い分けます。
5.「表示値のフィルター」で表示文字から絞る
Webページに表示されている文字を基準に対象を絞りたい場合は、「表示値のフィルター」を使用します。対象の表示文字を指定し、該当する要素だけがリストに残ることを確認してください。

表示される文字はWebページの更新によって変化する場合があります。指定した条件に合わず目的の店舗が除外されていないか、実際のページで確認します。
6.XPathを直接編集して要素の条件を調整する
フィルターではなく、繰り返し処理の「XPath」自体を編集して対象を指定することもできます。例では histListData pause というclassを持つ要素に着目しています。

XPathを編集したあとは、必ず「再読込」を実行してください。XPathが正しくても、ページ構造の変更によって認識結果が変わる場合があります。ブラウザ要素の指定が不安定な場合は、ブラウザの要素を安定して指定する方法もご確認ください。
7.最後の要素だけを処理する場合は開始行に「-1」を指定する
対象リストの最後の1件だけを処理したい場合は、「開始行」に -1 を指定します。

「開始行」は処理する位置を設定する項目です。通常の開始行・終了行・ステップの詳細は、要素の繰り返し処理マニュアルをご確認ください。
8.設定変更後は対象リストを再読込して確認する
「取得範囲」「XPath」「フィルター」「除外」などを変更した場合は、「再読込」を実行して「繰り返しの対象リスト」を確認します。 ロボットを全実行する前に、必要な店舗がすべて含まれているか、不要な行が混在していないかをチェックしてください。
- Webページ上の一覧が読み込まれているか確認する。
- 「要素の繰り返し処理」の設定を変更する。
- 「再読込」をクリックし、対象リストを更新する。
- 対象件数と対象要素の内容を確認する。
- 問題がなければロボットをテスト実行する。
繰り返し範囲が想定どおりにならない場合の確認ポイント
| 症状 | 確認する設定 |
|---|---|
| 必要な要素の一部しか取得できない | 「取得範囲」を「拡張した範囲の要素」に変更 |
| 不要な要素まで対象になる | XPathの除外 |
| 特定のHTML構造だけ対象にしたい | XPathのフィルター/XPathの直接編集 |
| 表示文字で対象を絞りたい | 表示値のフィルター |
| 最後の要素だけ処理したい | 開始行に -1 を指定 |
| 設定変更しても対象が変わらない | 再読込して対象リストを確認 |
| 実行のたびに対象が変わる | XPathや要素指定の安定性を確認 |
このページで扱うのはWebページ内の要素の繰り返しです。検索結果が複数ページに分かれている場合は、ページ移動を組み合わせる必要があります。詳しくはページをまたがって繰り返し処理する方法をご確認ください。
一覧の各行から文字や値を取得する場合は、繰り返し処理内で「値取得」アクションを使用します。Webページから文字・値を取得する方法も参考にしてください。
関連するマニュアル・ナレッジ
- JobAutoでWebページの一覧・表を繰り返し処理する方法:アクションの基本設定・開始行・終了行
- JobAutoでブラウザの要素が見つからないときの設定方法:XPathなどの要素指定
- JobAutoでページをまたがって繰り返し処理を行う方法:複数ページを順に処理する方法
- JobAutoでWebページの文字・値を取得する方法:対象要素から値を取得する方法
- JobAutoの繰り返し処理マニュアル:各種ループ処理
- JobAutoのブラウザ操作マニュアル:ブラウザ操作全般

[…] 要素の繰り返しの便利な使い方 […]