Загрузка файла CSV в DynamoDB с использованием скрипта Python - PullRequest
0 голосов
/ 26 октября 2019

Я пытаюсь загрузить файл CSV в DynamoDB. Для этого я написал ниже скрипт Python:

import boto3
import csv

dynamodb = boto3.resource('dynamodb')


def batch_write(table, rows):
  table = dynamodb.Table(table_name)

  with table.batch_writer() as batch:
    for row in rows:
        batch.put_item(row)

def read_csv(csv_file, list1):
    rows = csv.DictReader(open(csv_file))

    for row in rows:
        list1.append(row)

if __name__ == '__main__':
   table_name = 'Chicago_rest_ass4'
   file_name = 'Food_Inspections.csv'
   items = []

   read_csv(file_name, items)
   status = batch_write(table_name, items)
   if status == 'True':
      print('Data is saved')
   else:
      print('Error while inserting data...')

Но получаю ошибку ниже:

botocore.exceptions.ClientError: Произошла ошибка (ValidationException) при вызове операции BatchWriteItem:Одно или несколько значений параметров недопустимы: AttributeValue может не содержать пустую строку

Я не могу определить, как Item=row пусто? Или что я должен сделать, чтобы исправить это

...