ウェブスクレイピングの結果をjsonに変換したい

json

#1

ウェブスクレイピングで精製したDatatableを纏めてJSONの形式にして、
HTTP Requestで送信したいと思っています。
こうした場合、何か簡単にJSONへ変換が出来るメソッド等あったりするものでしょうか。
レベルの低い質問で申し訳ありませんが、
どうにかJSONの形式に出来ればその後の処理の箇所は作れるので、困っております。
どうぞ宜しくお願い致します。


#2

@ymuichiro さん、こんにちは
UiPathはJson.NETが使えると思います。


#3

やってみました。下記で一発変換できました。
Newtonsoft.Json.JsonConvert.SerializeObject(ExtractDataTable, Newtonsoft.Json.Formatting.Indented)


#4

回答大変ありがとうございます。
やってみたのですが添付画像のエラーでうまくいきませんでした。
変数の型等間違えていると思うのですが、この場合変数の設定を変えればうまくいきますか?
申し訳ないです。


#5

変数JSONのVariable TypeをStringかGenericValueに変更してください。それでうまくいくはずです。


#6

ありがとうございます
無事JSONの形式に変更できました。
丁寧に教えていただきありがとうございます。

お手数お掛けしました…


#7

度々申し訳ございません。
教えていただいた方法で取急ぎUiPathで取得した情報を送付することが出来ました。
しかし別の問題が出ておりましてお知恵を拝借できないでしょうか。

JSONに変換した後のデータは以下の形式で格納されておりました。

[{“column1”:“文字列1”},{“column1”:“文字列2” } , { “column1” : “文字列2” }]

あっているかわからないですが、配列に1つずつJSONが格納されている状態だと思います。
これだと受け側で扱いづらく、以下のようにする事はできたりしないでしょうか。

{
“column1”:“文字列”
“column2”:“文字列”
“column3”:“文字列”
}

度々お手数お掛け致します。


#8

書かれているJSONだと複数行の時はどのようなJSONを期待されていますか?
行列をJSONで表す書式は、現状のように配列を使わないとできないと思います。
たとえば3カラム、3行をJSONだと

[
{
“Column1”: “あ”,
“Column2”: 1,
“Column3”: “Taro”
},
{
“Column1”: “い”,
“Column2”: 2,
“Column3”: “Jiro”
},
{
“Column1”: “う”,
“Column2”: 3,
“Column3”: “Naomi”
}
]

となります。
もしかしたらですが受け側のJSONのパーサーが配列に名前がないと解析できないとかではないでしょうか?
ためしに下記のように配列全体に名前を付けるとうまくいったりしませんか?
“{\“DataTable\”:”+Newtonsoft.Json.JsonConvert.SerializeObject(ExtractDataTable,Newtonsoft.Json.Formatting.Indented) + “}”


#9

長らく返信しておらずすみません。
結論、送信先のサーバーでJSON Parseのやり方が違っていただけでした。
おかげ様でやりたいこと全部できました。
ご面倒お掛けしました。