AUTORO Assistantでデータを抽出
この記事では、Google Chrome拡張機能「AUTORO Assistant」のExtractData設定機能を使ってサイトからデータを抽出する方法を説明します。
ExtractDataアクションの説明も兼ねています。
AUTOROでサイトを操作する時に便利な3つの機能を持っています。
- CSSセレクタの右クリック取得
- サイト操作のREC機能
- ExtractData機能
AUTORO Assistantのインストール
AUTORO Assistantのダウンロードにつきましては、こちらからお問い合わせください。
また、すでにAUTOROをご契約いただいているお客様は、AUTOROログイン後に画面左下のサポートチャットの「ホーム」画面からダウンロードいただけます。
「ExtractData」ページからデータ抽出
例えば、以下のページのように、同じ構造をしたデータが複数存在しているページがあります。
こういったサイト上のデータを、表形式やJSON形式で抽出することができます。
※見出し行の出力有無は選択できます。設定手順の補足2を参照してください。
AUTOROのワークフロー設定画面からアクションをドラッグ&ドロップして手動で設定することもできますが、設定が複雑なためAUTORO Assistantを使うことを推奨します。
ワークフローの設定例
下記手順にてワークフローを設定します。
Google ChromeでAUTORO Assistantを起動します。
- AUTOROのアイコンをクリックします。
(アイコンがない場合、拡張機能を固定します)
- 「ExtractData」をクリックします。
- 操作サイトを一度クリックし、各要素が黄色い枠に囲まれる状態になっていればOKです。
抽出したい要素を順にクリックして選択していきます。
- 抽出したい要素をまず一つクリックし、表データにした時のデータ名(見出し名)をつけます。
- 選択後、要素が水色の枠で囲われます。
- 抽出したい要素と同じレベルの要素を続けてクリックします。(例えば見出しなら見出し、リンクならリンク)
例では、「記事タイトル」として抽出したい要素が全て水色の枠で囲われるまでこれを繰り返します。
- 次に取得したい要素をクリックして、データ名を変更し、上記を繰り返します。
- 全ての要素が水色の枠で囲われた状態になったら、AUTORO Assistantをもう一度開きSTOPをクリックします。
- COPYをクリックします。
- AUTOROのワークフロー設定画面を開き、エディタモードをクリックしてコード表示に切り替えます。
- コピーしたコードをエディタに貼り付けます。この時、文頭位置が他のアクションと揃うように注意してください。
アクションをひとつも設定していない場合、1行目文頭にスペースが空かないように貼り付けます。
- 貼り付けたコードの中の「browser」に書かれている「+undefined」を削除して、エディタモードをオフにします。
- 「ブラウザ」欄が空白の状態でExtractDataアクションがワークフローに組み込まれます。
対象のブラウザアウトプットを指定して完了です。
「2. 抽出する要素を選択」まで完了した後、「TRY」をクリックすると直接CSVが出力されます。
通常のCSV同様ダウンロードすることも可能です。
ExtractDataアクションの「フォーマット」欄で、出力データ形式を指定できます。
選択できるのは以下3パターンで、デフォルトでは、”csv”が選択されています。
AUTORO上の設定コード | 出力形式 |
---|---|
csv | 見出し行ありのCSV |
csvWithoutHeader | 見出し行なしのCSV |
json | JSONデータ |
サンプルデータでは、以下のような出力が想定されます。
・csv
・csvWithoutHeader
・json
サイトの構造によって、一次元配列として出力されないケースがあります。
jsonデータを使いたい場合はアウトプットにご注意ください。
[ { “記事タイトル” : “ブラウザを操作する” “書き出し” : “この記事では、ブ” }, { “記事タイトル” : “鉄道運行情報の通知” “書き出し” : “この記事では、特定” }, { “記事タイトル” : “検索結果のスクレイピング” “書き出し” : “この記事では、W” }, ... ]
# ブラウザを開く +open_browser_1: action>: OpenBrowser url: 'https://support.autoro.io/docs/example/' lang: 'ja-JP' headless: true windowSize: '1280 x 720' useShadowDomSelector: false private: false # ページからデータを抽出 +extract_data_1: action>: ExtractData browser: +open_browser_1 extractor: '[{"name":"見出し","selectors":[".col-lg-6:nth-child(1) .doc-sec",".col-lg-6:nth-child(2) .doc-sec"]},{"name":"書き出し","selectors":[".col-lg-6:nth-child(1) p",".col-lg-6:nth-child(2) p"]}]' format: csv multiple: true private: false