テキストファイルを作成する
614 views
この記事では、AUTOROでテキストファイル(.txt)を作成する方法を紹介します。
テキストファイルを利用する場面
ワークフローのデバッグや、テキストファイル形式でのスクレイピングで使用されます。具体例は以下です。
・セッションログ画面にアクションの結果を表示しきれなかった
・スクレイピング結果をtxtやHTMLファイルとして保存したい
・CSVファイルがうまく展開できない場合のデバッグ
CreateText(テキストファイルを作成)アクション
ワークフロー設定例
Webサイトからテキストを抽出し、テキストファイルで保存するサンプルを紹介します。
- OpenBrowser(ブラウザを開く)を設定します
- URLを以下とします
https://support.autoro.io/docs/guide/ブラウザ操作/cssセレクタがうまく取れない/
CreateTextFileアクションは、デフォルトでUTF-8を使用します。
これが原因で文字化けする場合は、以下をご確認ください。
- 使用しているテキストリーダーの設定を確認、変更
- AUTOROのChangeFileEncodingアクションを使用して、文字コードを変換してから保存する
# ブラウザを開く +open_browser_1: action>: OpenBrowser url: 'https://support.autoro.io/docs/guide/%e3%83%96%e3%83%a9%e3%82%a6%e3%82%b6%e6%93%8d%e4%bd%9c/css%e3%82%bb%e3%83%ac%e3%82%af%e3%82%bf%e3%81%8c%e3%81%86%e3%81%be%e3%81%8f%e5%8f%96%e3%82%8c%e3%81%aa%e3%81%84/' lang: 'ja-JP' timeZone: 'Asia/Tokyo' headless: true confirm: true windowSize: '1920 x 1080' useShadowDomSelector: false private: false # テキストを取得 +get_text_1: action>: GetText browser: +open_browser_1 selector: body ignoreError: true private: false # テキストファイルを作成 +create_text_file_1: action>: CreateTextFile text: +get_text_1 filename: 'createTextSample.txt' private: false # ファイルを保存 +save_file_1: action>: SaveFile provider: local filename: +create_text_file_1 createPath: false private: false meta: display: null
設定例:HTMLファイルからのデバッグ
このセクションでは、CreateTextファイルを使用したAUTOROのデバッグ例として、以下の事例に対処する方法を紹介します。
「ロボットでページを開いた時にのみ表示されるページ内HTML要素のCSSセレクタ」を確認するために、ページのHTMLを出力させた。 しかし、セッションログ画面で「サイズ上限を超えたため、payloadを表示することができません。」と表示されてしまった。 よって、HTMLやCSSセレクタを確認できない。
まず、ブラウザ上で「サイズ上限を超えたため、payloadを表示することが出来ません」となるページを開きます。
- OpenBrowser(ブラウザを開く)を設定します
- URLを以下とします
https://docs.autoro.io/actions/browser
そのままHTMLが開きます。
以下記事のような形で、HTML構造やCSSセレクタを確認し、ロボットで開いたときにしか表示されない要素を調査していきます。
参考:CSSセレクタがうまく取れない(Selector not found)
※iframe内の要素は意図するデバッグができない可能性が高いです
2の段階で以下のコードを使用すると、iframe内部の要素が取得できる場合があります。
document.querySelector("中身を確認したいiframeタグのCSSセレクタ").contentDocument.querySelector("html").outerHTML;※ページ構造によっては、この方法ではiframeの中身を取得できない場合があります。
こちらはエラーではありません。
セッションログ画面にて、あるアクションの結果が膨大すぎて、ログの内訳に表示しきれなかった際に表示されるメッセージです。
あくまで「セッションログ画面における表示上の問題」であるため、アクションの実行結果には影響しません。
# ブラウザを開く +open_browser_1: action>: OpenBrowser url: 'https://docs.autoro.io/actions/browser' lang: 'ja-JP' timeZone: 'Asia/Tokyo' headless: true confirm: true windowSize: '1920 x 1080' useShadowDomSelector: false private: false # ページ内でJavaScriptを実行する +inject_script_1: action>: InjectScript browser: +open_browser_1 code: "document.querySelector(\"html\").outerHTML;\n" returnValue: true private: false # テキストファイルを作成 +create_text_file_1: action>: CreateTextFile text: +inject_script_1 filename: 'createTextSample.html' private: false # ファイルを保存 +save_file_1: action>: SaveFile provider: local filename: +create_text_file_1 createPath: false private: false meta: display: null
CreateTextFile テキストファイル .txt HTMLファイル
このページは役に立ちましたか?
サイトを見て解決しない場合はAUTOROにログインし、チャットよりお問い合わせください。