Я пытаюсь преобразовать код Python для извлечения пар ключ / значение из вывода JSON (созданного в Microsoft Form Recognizer) и не могу воссоздать цикл в VB.NET (UiPath).
До сих пор я создалвложенный цикл for-each в UiPath для циклического прохождения каждой пары ключ / значение на каждой странице.
import json
response_file = "response.json"
# Specify the list of keys to be reported.
keys = set(["Number","Opened"])
with open(response_file, mode = "r", encoding = "utf-8") as f:
data = json.load(f)
# Loop over all pages in the document.
for page in data["pages"]:
# Loop over all key/value pairs in the page.
for kvp in page["keyValuePairs"]:
key_txt = " ".join([x["text"] for x in kvp["key"]])
# Report only the pre-specified subset of keys.
if key_txt in keys:
print("key: %s" % key_txt)
vals = [x["text"] for x in kvp["value"]]
print("value: %s" % " ".join(vals))
Используемый мной пример JSON:
{
"status": "success",
"pages": [
{
"number": 1,
"height": 792,
"width": 612,
"clusterId": 0,
"keyValuePairs": [
{
"key": [
{
"text": "Number",
"boundingBox": [
71.6,
704.6,
109.0,
704.6,
109.0,
693.6,
71.6,
693.6
]
}
],
"value": [
{
"text": "RITM0041763",
"boundingBox": [
178.7,
704.6,
241.4,
704.6,
241.4,
693.6,
178.7,
693.6
],
"confidence": 1.0
}
]
},
{
"key": [
{
"text": "Opened",
"boundingBox": [
321.0,
704.6,
357.8,
704.6,
357.8,
693.6,
321.0,
693.6
]
}
],
"value": [
{
"text": "09/21/2018 09:04:01 AM",
"boundingBox": [
428.1,
704.6,
536.5,
704.6,
536.5,
693.6,
428.1,
693.6
],
"confidence": 1.0
}
]
Ошибка в UiPath (выполняетсяв VB.NET) это «закрывающий идентификатор, заключенный в квадратные скобки»].