Automation Anywhere でJSONファイルを処理する
概要
Automation Anywhere には標準で JSON 形式を扱う機能がありませんが、Automation Anywhere の特徴のひとつである Bot Store には、JSON 処理用のボットがいくつか登録されており、これらをダウンロードしてインストールすることで、機能を追加することが可能です。
Bot Store にある JSON 処理関連のボット
2019年8月現在、Bot Store には4つのボットが登録されています。
- JSON Parser Bot (By Automation Anywhere)
- Convert Json To Xml (By Automation Anywhere)
- Convert JSON TO CSV (By Automation Anywhere)
- CSV to JSON (By qBotica Inc)
JSON 処理機能を追加して使ってみる
上記の4つのボットをインストールして使ってみました。以下のようなMeta Bot がインストールされます。
今回使うJSONサンプルはこちら (テキストファイルとして扱うため、拡張子を.txtにしています)
{
"glossary": {
"title": "example glossary",
"GlossDiv": {
"title": "S",
"GlossList": {
"GlossEntry": {
"ID": "SGML",
"GlossTerm": "Standard Generalized Markup Language",
"Abbrev": "ISO 8879:1986",
"GlossDef": {
"para": "A meta-markup language, used to create markup languages such as DocBook.",
"GlossSeeAlso": ["GML", "XML"]
},
"GlossSee": "markup"
}
}
}
}
}
1. JSON Parser Bot
JSON 文法のパーサー、および指定したレベルのキーの列挙や値を得るMeta Botです。
ロジック | Input パラメータ | Outputパラメーター | 説明 |
---|---|---|---|
Get Keys from JSON Logic | vJsonString | vKeys | vJsonStringの最上位層のキーを列挙。 |
Get Value from JSON Logic | vJsonString, vKey | vResponse | 指定されたキーに対応する値を返す。 |
Validate JSON Logic | vJsonString | vParseSuccessful | JSON文法が正しいかどうかを返す。(True or False) |
サンプルボット: デスクトップに入力ファイルを置いて読み込ませる。カーソルが当たっている位置でこのMeta Botを呼び出します。
結果:
- Validate JSON LogicはvParseSuccessful=Trueを返します。
- Get Keys from JSON Logicは、"glossary"を返します。(最上位で並んでいるキーがglossary 1つだけなので)
- Get Value from JSON LogicはvKey=""で呼び出すと、読み込んだJSON全体を返します。vKey="glossary.GlossDiv.GlossList.GlossEntry"で呼び出すと、
{
"ID": "SGML",
"GlossTerm": "Standard Generalized Markup Language",
"Abbrev": "ISO 8879:1986",
"GlossDef": {
"para": "A meta-markup language, used to create markup languages such as DocBook.",
"GlossSeeAlso": ["GML", "XML"]
},
"GlossSee": "markup"
}
を返します。使い方としては、Get Keys from JSON Logicで得たキーひとつひとつに対して値を得て、さらにその中のキーを列挙して...というループを繰り返していって階層を掘っていく、という使い方をするのでしょう。
2. Convert Json To Xml
JSON 形式をXML 形式に、またはXML 形式をJSON 形式に変換するMeta Botです。また、JSON/XML をファイルに書き出す機能も付いています。
ロジック | Input パラメータ | Outputパラメーター | 説明 |
---|---|---|---|
JsonToText&JsonFileSave | vJson, vFileSavePath | vJsonを指定されたパス+.txt/.jsonの2つのファイルに書き出します。 | |
JsonToXmlResponse | vJson | vResponse | vJsonをXMLに変換、結果をvResponseに返します。 |
XmlToJsonResponse | vXml | vResponse | vXmlをJSONに変換、結果をvResponseに返します。 |
XmlToText&XmlFileSave | vXml, vFileSavePath | vXmlを指定されたパス+.txt/.xmlの2つのファイルに書き出します。 |
ためしに、JsonToXmlResponse コマンドでvResponseに入った結果をXmlToText&XmlFileSave コマンドでファイルに書き出すと、以下の内容が得られました。
<Root>
<glossary>
<title>example glossary</title>
<GlossDiv>
<title>S</title>
<GlossList>
<GlossEntry>
<ID>SGML</ID>
<GlossTerm>Standard Generalized Markup Language</GlossTerm>
<Abbrev>ISO 8879:1986</Abbrev>
<GlossDef>
<para>A meta-markup language, used to create markup languages such as DocBook.</para>
<GlossSeeAlso>GML</GlossSeeAlso>
<GlossSeeAlso>XML</GlossSeeAlso>
</GlossDef>
<GlossSee>markup</GlossSee>
</GlossEntry>
</GlossList>
</GlossDiv>
</glossary>
</Root>
3. Convert JSON TO CSV
JSON の中の表形式を(場合によっては複数の)CSV 形式のファイルにに変換するMeta Botです。
ロジック | Input パラメータ | Outputパラメーター | 説明 |
---|---|---|---|
JsonToCSV | vJsonFile, vCodePage, vTableNo, vOutputPath | vResponse | vJsonFileのパスで指定されたJSONデータを、指定されたパスのフォルダーの中にTable_0.csv, table_1.csv...という形で書き出します。 |
4. CSV to JSON
CSV 形式のファイルをJSON形式に変換するMeta Botです。
ロジック | Input パラメータ | Outputパラメーター | 説明 |
---|---|---|---|
csvtojson | vLogFile, vInputFile | JsonOutput | vInputFileで指定されたCSV形式をJsonOutputに出力します。 |
このように、いろいろ汎用的に使えるMeta Botが入手可能ですので試してみてください。最後までお読みいただきありがとうございました。
Author And Source
この問題について(Automation Anywhere でJSONファイルを処理する), 我々は、より多くの情報をここで見つけました https://qiita.com/RPAbot/items/c890a6d5d279ef5ec68d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .