

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Analisando a documentação de identidade com o Amazon Textract
<a name="analyzing-document-identity"></a>

Para analisar documentos de identidade, use a API AnalyzeID e passa um arquivo de documento como entrada.`AnalyzeID`Retorna uma estrutura JSON que contenha o texto analisado. Para obter mais informações, consulte [Analisar documentos de identidade](how-it-works-identity.md).

Você pode fornecer um documento de entrada como uma matriz de bytes de imagem (bytes de imagem codificados em base64) ou um objeto do Amazon S3. Neste procedimento, você carrega um arquivo de imagem no bucket do S3 e especifica o nome do arquivo.

**Para analisar um documento de identidade (API)**

1. Se ainda não tiver feito isso:

   1. Criar ou atualizar um usuário do IAM com`AmazonTextractFullAccess`e`AmazonS3ReadOnlyAccess`permissões. Para obter mais informações, consulte [Etapa 1: Configurar uma conta da AWS e criar um usuário do IAM](setting-up.md#setting-up-iam).

   1. Instale e configure a AWS CLI e os SDKs da AWS. Para obter mais informações, consulte [Etapa 2: Configurar aAWS CLIeAWSSDKs da](setup-awscli-sdk.md).

1. Carregue uma imagem que contenha um documento no bucket do S3. 

   Para obter instruções, consulte[Carregar objetos no Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/UploadingObjectsintoAmazonS3.html)no*Guia do usuário do Amazon Simple Storage Service*.

1. Use os exemplos a seguir para chamar a operação `AnalyzeID`.

------
#### [ CLI ]

   

   O exemplo a seguir recebe um arquivo de entrada de um bucket do S3 e executa a`AnalyzeID`operação nele. No código abaixo, substitua o valor de{{balde}}Com o nome do seu bucket do S3, o valor de{{arquivo}}Com o nome do arquivo no bucket e o valor de{{região}}Com o nome do`region`Associado à sua conta do. 

   

   ```
   aws textract analyze-id --document-pages '[{"S3Object":{"Bucket":"{{bucket}}","Name":"{{name}}"}}]' --region {{region}}
   ```

   Você também pode chamar a API com a frente e a parte de trás de uma carteira de motorista adicionando outro objeto S3 à entrada.

   ```
   aws textract analyze-id --document-pages '[{"S3Object":{"Bucket":"{{bucket}}","Name":"{{name front}}"}}, {"S3Object":{"Bucket":"{{bucket}}","Name":"{{name back}}"}}]' --region us-east-1
   ```

   Se você estiver acessando a CLI em um dispositivo Windows, use aspas duplas em vez de aspas simples e escape das aspas duplas internas por barra invertida (ou seja,\\) para resolver quaisquer erros de analisador que você possa encontrar. Para obter um exemplo, veja a seguir:

   ```
   aws textract analyze-id --document-pages "[{\"S3Object\":{\"Bucket\":\"{{bucket}}\",\"Name\":\"{{name}}\"}}]" --region {{region}}
   ```

------
#### [ Python ]

   O exemplo a seguir recebe um arquivo de entrada de um bucket do S3 e executa a`AnalyzeID`operação sobre ela, retornando os pares de chave/valor detectados. No código abaixo, substitua o valor de{{bucket\_name}}Com o nome do seu bucket do S3, o valor de{{file\_name}}Com o nome do arquivo no bucket e o valor de{{região}}Com o nome do`region`Associado à sua conta do. 

   ```
   import boto3
   
   bucket_name = "bucket-name"
   file_name = "file-name"
   region = "region-name"
   
   def analyze_id(region, bucket_name, file_name):
   
       textract_client = boto3.client('textract', region_name=region)
       response = textract_client.analyze_id(DocumentPages=[{"S3Object":{"Bucket":bucket_name,"Name":file_name}}])
   
       for doc_fields in response['IdentityDocuments']:
           for id_field in doc_fields['IdentityDocumentFields']:
               for key, val in id_field.items():
                   if "Type" in str(key):
                       print("Type: " + str(val['Text']))
               for key, val in id_field.items():
                   if "ValueDetection" in str(key):
                       print("Value Detection: " + str(val['Text']))
               print()
   
   analyze_id(region, bucket_name, file_name)
   ```

------
#### [ Java ]

   O exemplo a seguir recebe um arquivo de entrada de um bucket do S3 e executa a`AnalyzeID`operação nele, retornando os dados detectados. Na função principal, substitua os valores de`s3bucket`e`sourceDoc`Com os nomes do bucket do Amazon S3 e da imagem usada na etapa 2. 

   ```
   /*
      Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
      SPDX-License-Identifier: Apache-2.0
   */
   
   package com.amazonaws.samples;
   
   import com.amazonaws.regions.Regions;
   import com.amazonaws.services.textract.AmazonTextractClient;
   import com.amazonaws.services.textract.AmazonTextractClientBuilder;
   import com.amazonaws.services.textract.model.*;
   import java.util.ArrayList;
   import java.util.List;
   
   public class AnalyzeIdentityDocument {
   
       public static void main(String[] args) {
   
           final String USAGE = "\n" +
                   "Usage:\n" +
                   "    <s3bucket><sourceDoc> \n\n" +
                   "Where:\n" +
                   "    s3bucket - the Amazon S3 bucket where the document is located. \n" +
                   "    sourceDoc - the name of the document. \n";
   
           if (args.length != 1) {
               System.out.println(USAGE);
               System.exit(1);
           }
   
           String s3bucket = "bucket-name"; //args[0];
           String sourceDoc = "sourcedoc-name";  //args[1];
           AmazonTextractClient textractClient = (AmazonTextractClient) AmazonTextractClientBuilder.standard()
                   .withRegion(Regions.US_EAST_1)
                   .build();
   
           getDocDetails(textractClient, s3bucket, sourceDoc);
       }
   
       public static void getDocDetails(AmazonTextractClient textractClient, String s3bucket, String sourceDoc ) {
   
          try {
   
               S3Object s3 = new S3Object();
               s3.setBucket(s3bucket);
               s3.setName(sourceDoc);
   
               com.amazonaws.services.textract.model.Document myDoc = new com.amazonaws.services.textract.model.Document();
               myDoc.setS3Object(s3);
   
               List<Document> list1 = new ArrayList();
               list1.add(myDoc);
   
               AnalyzeIDRequest idRequest = new AnalyzeIDRequest();
               idRequest.setDocumentPages(list1);
   
               AnalyzeIDResult result = textractClient.analyzeID(idRequest);
               List<IdentityDocument> docs =  result.getIdentityDocuments();
               for (IdentityDocument doc: docs) {
   
                   List<IdentityDocumentField>idFields = doc.getIdentityDocumentFields();
                   for (IdentityDocumentField field: idFields) {
                       System.out.println("Field type is "+ field.getType().getText());
                       System.out.println("Field value is "+ field.getValueDetection().getText());
                   }
               }
   
          } catch (Exception e) {
               e.printStackTrace();
          }
       }
   }
   ```

------

1. Isso fornecerá a você a saída do JSON para o`AnalyzeID`operação.