Фильтрация данных, возвращаемых функцией AWS Textract - PullRequest
0 голосов
/ 16 июня 2020

Я извлек данные, возвращенные функцией Textract AWS. Тип возвращаемых данных этой функции Textract имеет следующий тип:

{
   "AnalyzeDocumentModelVersion": "string",
   "Blocks": [ 
      { 
         "BlockType": "string",
         "ColumnIndex": number,
         "ColumnSpan": number,
         "Confidence": number,
         "EntityTypes": [ "string" ],
         "Geometry": { 
            "BoundingBox": { 
               "Height": number,
               "Left": number,
               "Top": number,
               "Width": number
            },
            "Polygon": [ 
               { 
                  "X": number,
                  "Y": number
               }
            ]
         },
         "Id": "string",
         "Page": number,
         "Relationships": [ 
            { 
               "Ids": [ "string" ],
               "Type": "string"
            }
         ],
         "RowIndex": number,
         "RowSpan": number,
         "SelectionStatus": "string",
         "Text": "string"
      }
   ],
   "DocumentMetadata": { 
      "Pages": number
   },
   "JobStatus": "string",
   "NextToken": "string",
   "StatusMessage": "string",
   "Warnings": [ 
      { 
         "ErrorCode": "string",
         "Pages": [ number ]
      }
   ]
}

Я извлек блоки из этих данных с помощью следующего кода:

var d = null;
...<Some Code Here>...
d = data.Blocks;
console.log(d);

, который дает вывод как массив из JSON объектов. Пример извлеченного текста приведен ниже:

[...{ BlockType: 'WORD',
    Confidence: 99.7286376953125,
    Text: '2000.00',
    Geometry: { BoundingBox: [Object], Polygon: [Array] },
    Id: '<ID here>',
    Page: 1 }, ...]

Я хочу извлечь только текстовое поле и рассматривать его как единственный вывод. С чего начать?

1 Ответ

3 голосов
/ 16 июня 2020

Я, вероятно, неверно истолковал ваш вопрос, но если вам нужно извлечь значение поля Text каждого объекта в массиве данных, взгляните на следующий пример

const data = [
  {
    BlockType: "WORD",
    Confidence: 99.7286376953125,
    Text: "2000.00",
    Geometry: { BoundingBox: {}, Polygon: [] },
    Id: "<ID here>",
    Page: 1,
  },
];

const output = data.map(({ Text: text }) => text);

console.log(output);

См.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...