MENU

for Ideal Design

RPA

【WinActor】HTMLから「WinActorノート」でデータを取得

RPA WinActor 業務改善 生産性向上 ビジネスデザイン データでビジネスをもっと面白く エンジニア

Webから色んなデータ取得方法レシピをご紹介している企画・今回は第4弾、「HTMLコード」に「WinActorノート」を組み合わせてデータ抽出する方法をお伝えします。
※これはWinActor Ver.6.3.0以上のバージョンで使用することが出来ます。

例えば、
自社SHOPの価格にサイトごとに値段が違うなどエラーが無いかどうか?
自社商品が不正に出品されていないかどうか?
など、企業様側でWEBを監視しなければならない事も多くございますよね。
そんなお悩みもRPA(WinActor)で一歩前進させてみませんか!?

■はじめに

さて、今回の題材はWebサイトのショップから商品の値段や画像、リンク付けされているURLを取得してみましょう。
WEBスクレイピングの際は対象のサイト規約にのっとり運用お願いします。今回は自作のsampleショップサイトで実践してみます。

👇サンプルSHOP_WEBサイト

アンジー★SHOP

🌟スペック環境:Windows10、WinActor ver.711、InternetExplorer11

■過去記事:
1.WinActorライブラリ「表の値取得(IE)」ノード
2.WinActorライブラリ「テーブルスクレイピング(Chrome)」ノードレシピ
3.Chrome拡張機能「TableCapture」「OCRマッチング」ノードを利用するレシピ

■ここで出来るレシピ

WEBサイトのHTMLコードを解析し、欲しい情報だけをコードから抜き出す方法です。
1つ大事なことをお伝えすると、WEBサイトごとに作り込み方が違うため、都度HTMLコードの確認をして操作を変更していく必要があるという点です。

このことを念頭においていただきましたら、アイディア次第で色んなデータ取得が出来る筈です。
以下画像はWEBサイトから、「リンクURL」「画像URL」「商品タイトル」「値段」を抜き出し取得しExcelへ転記しております。

画像3

👆最終的にこんなExcelを作ります!(Webからデータ取得)

■作成実践動画

まずは動画を見てから流れをつかんで作成してみてくださいね👇

※WinActorノートの使い方については以下記事の中で動画説明しております。ご参考頂ければと存じます。

(参考過去記事)
WinActor、OCR機能があるの気づいてました?どれくらいの精度なのか試してみました!

■シナリオ詳細レシピ

※完成シナリオの全ノードは、6つだけ!

フローチャート

◆プロパティ詳細設定

①chrome起動
(プロパティ)
・コマンド:chrome.exe のフルパス
・オプション:対象ページのURL

画像6

②ページが読込み完了するまで待つ
(プロパティ)
・取得結果:結果(変数)
・ウィンドウ識別名:対象ページをターゲット選択

画像7

③Webページの保存(Ctrl+U)
(プロパティ)
・ウィンドウ識別名:対象ページをターゲット選択
・操作
待機[1000]ミリ秒
キーボード[Ctrl]をDown
キーボード[U]をDown
キーボード[U]をUp
キーボード[Ctrl]をUp
待機[1000]ミリ秒

画像10

④HTML文をコピー(Ctrl+A、Ctrl+C)
(プロパティ)
・ウィンドウ識別名:対象ページをターゲット選択
・操作
待機[1000]ミリ秒
キーボード[Ctrl]をDown
キーボード[A]をDown
キーボード[A]をUp
キーボード[Ctrl]をUp
キーボード[Ctrl]をDown
キーボード[C]をDown
キーボード[C]をUp
キーボード[Ctrl]をUp
待機[1000]ミリ秒

画像10

⑤WinActorノート、マクロ実行
(プロパティ)
・マクロファイル名:値⇒JSONファイルのフルパス

画像10

👇マクロの詳細

1.すべてクリア
2.クリップボードからペースト
3.【https://note.com】を含むブロックをマーク
4.【listItem-img”><img src=”】を含むブロックをマーク
5.【listItem-title”>】を含むブロックをマーク
6.【listItem-price”>】を含むブロックをマーク
7.マーク以外削除
8.【img src=”】以前を削除
9.【href=”】以前を削除
10.【”alt】以降を削除
11.<>を含む中身も削除
12.【”>】以降を削除
13.前ブロックの空白削除
14.全体をコピー

画像11

※WinActorノートのマクロは自動記録が便利です。動画で作成方法は確認してくださいね。

👇マクロ実行後のWinActorノートの様子は以下参考

画像12

⑥Excelへ結果を貼り付け
(プロパティ)
・ファイル名:Excelフルパス
・シート名:値⇒
・セル:値⇒B1
※画像はa1ですがB1としてください

画像13

お疲れさまでした!!
ここまで組み立てられたら一旦完成。実行して思い通りにデータが取得できているか?確認してみてくださいね。

※WinActorマクロがうまく動いてくれない…という方はマクロの前後に待機を挟んでいただくなど工夫して実行してみてください。

■最後に

ここまでお読みいただきありがとうございます。
今回は少し知識が必要な難しさを感じた方もいらっしゃるかもしれません。
WinActorの良いところはプログラムコードが書けなくても自動化シナリオを構築できること!です。
ただ少しだけプラスアルファを知るだけで、取得できる情報は飛躍的に伸びる!ということをお伝えしたく今回、記事にしました。
HTMLのすべてを理解せずとも良いのです。必要最低限の基礎だけでOKだと思います。

クラウドツールご利用になっていらっしゃる方や、WEBショップお持ちのユーザー様へ一つの手段として見て頂けたら幸いです。

もちろん、この方法がすべてではありません。
シナリオの安定稼働を目指し、手段の一つとして「そんなことをしている人もいたな」と片隅に置いてもらえたら幸いです。

🌟Webスクレイピング、クローリングするシナリオ作成時の注意点をふまえておきましょう!

■著作権と利用規約
Webページ上の情報の著作権や利用規約を確認下さい。Webページ上の情報を抜き出して再利用することを利用規約で禁じているサイトもあります。
■Webサイトへの負荷
プログラムの作り方によっては、同時に複数のURLに接続してデータを取得したり、短時間で連続してURLからデータを取得するなど、Webサイトに負荷をかけない様にする必要があります。
最低1秒以上は間隔をあけてWebサイトへアクセスするなど対応が必要です。

最後までお読みいただき、ありがとうございました。
皆様も是非、一度チャレンジしてみて下さいね!