Python 3.7
Я пытаюсь прочитать файл CSV, зашифрованный в формате GPG. Я могу прочитать файл и записать его в корзину S3. Но когда я пытаюсь получить количество строк и столбцов в этом файле, я не могу записать.
Я читаю из одного файла S3, расшифровываю его и помещаю в другое ведро S3.
src_file_obj = src_s3_client.get_object(Bucket=src_bucket_name, Key=file['Key'])
encrypted_data = src_file_obj['Body'].read()
decrypted_data = gpg_key.decrypt(encrypted_data, passphrase=pass_phrase)
target_s3_client.put_object(Bucket=target_bucket_name, Key=new_target_file_name, Body=decrypted_data.data, ServerSideEncryption='AES256')
Я могу записать эти расшифрованные данные в новый файл в новой папке S3. Но когда я пытаюсь собрать количество строк и столбцов файла. Я не способен.
Как мне записать количество строк и столбцов этого конкретного файла.
Опции, которые я пробовал:
decrypted_data.data type is: <class 'bytes'>
decrypted_data type is: <class 'gnupg._parsers.Crypt'>
Поскольку decrypted_data.data является байтовым форматом, я попытался прочитать из него но это сквозная ошибка. Я попытался прочитать decrypted_data, который является gnupg.parsers.Crypt, который также не работает. Я так понимаю, мне нужно изменить формат прочитанного файла. Я не уверен, как справиться с этим.
1)fileObject = pandas.read_csv(io.BytesIO(decrypt_data.data), encoding='utf8')
2)fileObject = pandas.read_csv(decrypted_data)
Спасибо
Том