前回はSUUMOのURLを表示させるところまで開発をしましたので、今回は続きを開発していきます!
特に、ページが移ったとしてもループがきちんと機能するかどうかを確認することを中心にまとめていきます!
調べたい土地を選択する
今回は埼玉県春日部市の土地情報を検索し、情報収集をしてみます。
※春日部市に特別な理由はありません!
なので、まずは「関東」の箇所を右クリック→出てくるメニューの中から「クリック」を選択します。
画面が変わりますので、次は同じように「土地」をクリックします。
その次は「埼玉県」をクリックです。
するとエリアにチェックを入れる画面になりますので、春日部市のチェックボックスを選択して右クリック→メニューから「チェックボックス設定」をクリックします。
このような画面が出てきますので、「チェック済み」のままでOKをクリックします。
今回はチェックをつけたいので「チェック済み」のままですが、もしチェックを外したい場合には「未チェック」に変更したら大丈夫です。
そして検索のボタンをクリックします。
そうすると春日部市の土地情報が出てきます!
ループを設定する
まず自分がどのようにループをさせたいのかをイメージします。
今回はもちろん物件ごとに情報収集をしていきたいので、1つループ(イテレーション)を進めたときに、ちゃんと次の物件に進んでいるかどうかを確認することが必要です。
すでにSUUMOで、どのように設定すればスムーズにループが動くのかを確認しましたので、下の方法でやれば大丈夫なはずです。
※サイトの構造が変わってしまった場合には、上手く機能しない可能性もあります。
その方法ですが、下記のキャプチャのようにタイトルの部分を選択して右クリック→ループでホバー→「タグ繰り返し」をクリックします。
そうしてループが設定できますが、念のためちゃんと動くかを確認します。
下のキャプチャのように、青枠のようにエンドステップが選択されていることを確認して、ループのステップの赤枠の「▶」をクリックすると、イテレーション(ループのステップの中の数字)が進んでいきます。
イテレーションが進むごとに、ちゃんと物件に進んでいるかどうかを確認します。
それが確認できれば、ちゃんと自分がやりたいこととループの動きが一致しているので、そのままの設定で大丈夫です。
もし自分がイメージしているようにループが動かないのであれば、ループの中の「タグ繰り返し」以外の機能を使ってみたり、ループのステップの中の設定を変えてあげる必要があります。
次のページでもループの動きを確認する
今回、春日部市の物件数が163件ですので、全件の情報を取得する場合、必ずページを移動する必要があります。
※検索するタイミングによって件数が変わっていきます
※SUUMOの場合、1ページの最大表示件数は100件です
サイトによりますがページを移動すると、ページの構成が変わることがあり、「1ページ目・2ページ目はちゃんと抽出できたのに、3ページ目では抽出できない」ということもあります。
そのため、上で設定したループの設定が他のページでも確認をしておきます。
このようにループを設定した直後に確認をしておかないといけません。
ループを設定して、その後の抽出などのステップを全て作ってから、後でループの設定が間違っていることに気づくと、ループを再設定した後に改めて抽出ステップを設定し直す必要があります。
それは本当に面倒なので(笑)、ループを設定した直後に、別のページに移ってもちゃんと動くかどうかを確認することをオススメします!
具体的に開発していく
なので、別ページでも動くことを確認するために、ループの直前にブランチを追加します。
そして、下のキャプチャの青枠の部分が選択されていることを確認した上で、赤枠のアイコンから新しいアクションステップを作成します。
このステップのアクションを選択するのですが、「アクションを選択→ループでホバー→『繰り返し』をクリック」します。
次にブランチの下側のエンドステップ(×のところ)を選択した状態で、「次へ」をクリックします。
そしてクリックのステップの後にステップを作成し、そのステップの「アクションを選択→ループでホバー→『次へ』をクリック」します。
Yahooファイナンスのロボットでも使いましたが、次のページに移るときにこのRepeatとNextセットでよく使います。
下のキャプチャのように、Nextのステップを通るとRepeatのステップに戻りますので、次のページに移ってからも青枠のループをしてくれるように設定することが出来ました。
次のページに移っても、「次へ」をクリックするステップが機能するかどうかを確認する
まずはSUUMOのページで「次へ」をクリックするステップを確認してみますので、下のキャプチャのように「次へ」をクリックするステップを選択しましょう。
先ほど設定したので、青枠のように1ページ目に関してはちゃんと「次へ」の場所にファインダーが機能しています。
ではSUUMOで次のページに移ってみて、次のページでもこのステップが機能するのかどうかを確かめてみます。
下のキャプチャの青枠のように、「次へ」をクリックするステップを選択した状態で、Repeatのステップの「▶」をクリックします。
すると次のページに移りますが、上のキャプチャのように「前へ」を選択してしまっています。
そのため、こちらのステップのファインダーを修正します。
下のキャプチャの赤枠の①のようにタグパターンのところに「次へ」と入力し、②の虫メガネのマークをクリックすると、青枠のようにちゃんと「次へ」にファインダーが修正されたことが分かります。
次のページに移っても、ループが機能するかどうかを確認する
さて、ようやくループが機能するかどうかを確認していきます。
ここまでで、すでに2ページに移っていますので、ループの右側にあるエンドステップをクリックします。
するとBizRobo!のブラウザ上には、ループがどこを選択しているかが表示されます。
そして、ちゃんと機能するかどうかを確認するためにループの中の青枠の「▶」を押して、ちゃんと次の物件を選択されるかどうかを確認します。
4~5回クリックして、ちゃんと次の物件が選択されれば、基本的にはそのページで上手くループが機能していると考えて良いでしょう。
なので、また次のページを確認するために上のキャプチャのRepeatのステップの紫色の枠の「▶」を押して次のページに移りまs。
そして再度、青枠の「▶」を4~5回クリックして、次の物件が選択されるかどうかを確認します。
恐らく3ページくらい確認すれば大丈夫かと思いますが、サイトによっては5ページ目からサイトの構成が変わるようなこともありますので、そのような場合にはデバッグでエラーが起こったり、取得した情報が「何かおかしい」と思ったら、そのタイミングでロボットを修正することが必要になります。
このようにして、ページが移ってもちゃんとループが機能することが確認できました!
次回予告
今回ループがちゃんと機能することを確認しましたので、次回はループの中に抽出のステップを入れて、必要な情報をちゃんと抽出できるようにロボット開発をしていきます!
お楽しみに!!