Como construir um objeto TarFile na memória do buffer de byte no Python 3?
É possível criar um objeto TarFile na memória usando um buffer contendo os dados tar sem precisar gravar o TarFile no disco e abri-lo novamente? Nós recebemos os bytes enviados por um soquete.
Algo assim:
import tarfile
byte_array = client.read_bytes()
tar = tarfile.open(byte_array) # how to do this?
# use "tar" as a regular TarFile object
for member in tar.getmembers():
f = tar.extractfile(member)
print(f)
Nota: uma das razões para fazer isso é que, eventualmente, queremos poder fazer isso com vários encadeamentos simultaneamente, portanto, o uso de um arquivo temporário pode ser substituído se dois encadeamentos tentarem fazê-lo ao mesmo tempo.
Obrigado por toda e qualquer ajuda!