Как я могу получить данные PDF из хранилища firebase — Python?

#python #google-cloud-storage #firebase-storage

#python #google-облачное хранилище #firebase-хранилище

Вопрос:

Я пытаюсь вставить данные PDF-файла в свой код из firebase / Google storage.

Вот что я сделал до сих пор

 from google.cloud import storage
from firebase import firebase

firebase = firebase.FirebaseApplication('https://test.firebaseio.com/')
client = storage.Client()
bucket = client.get_bucket('test.appspot.com')
blob = bucket.blob('Motivation_Letter.pdf')

blob.download_as_string()
  

Я получаю такой вывод. Как я могу сделать его читаемым?

 b'%PDF-1.7rn%xb5xb5xb5xb5rn1 0 objrn<</Type/Catalog/Pages 2 0 R/Lang(en-US) /StructTreeRoot 15 0 R/MarkInfo<</Marked true>>/Metadata 44 0 R/ViewerPreferences 45 0 R>>rnendobjrn2 0 objrn<</Type/Pages/Count 1/Kids[ 3 0 R] >>rnendobjrn3 0 objrn<</Type/Page/Parent 2 0 R/Resources<</Font<</F1 5 0 R/F2 9 0 R>>/ExtGState<</GS7 7 0 R/GS8 8 0 R>>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[ 0 0 612 792] /Contents 4 0 R/Group<</Type/Group/S/Transparency/CS/DeviceRGB>>/Tabs/S/StructParents 0>>rnendobjrn4 0 objrn<</Filter/FlateDecode/Length 3283>>rnstreamrnxx9cxb5\[OxdcHx16~Gxe2?xd4c{x97v\xbe[BHx81$xb3x8cx16) xc8x8eF3xfb`hx87xcx1axb6xdb$xdbxf9xf5[xe7xd4xddxaexa2![x8cx14x04nxb7xabxea\xbexf3x9dx8bx87xbcxf9Hx8ex8fxdf\x9cx9dxbf#xc9xc9t9}wFxfesxx90xc4txfcxd7xd0x94$xa4d?xabamp;%x9bxeexf0xe0xb7xbfx90xf5xe1xc1xe9xd5xe1xc1x9bx0fx94xb0x0fxae>x1fx1ePvSB(xa9xd28Ix0bR%ux9cWxe4xeax8exddxf4xcbeEnxb7xecx81xe4x16xffxaaxc5_xbfx1cx1exfcxb1xx17-x9bExd7nxa2exb9 ....... '
  

Ответ №1:

Вы должны сохранить эти данные как в PDF-файле, используя этот тип концепции.

 """ PDF DATA VAR """
DATA_FROM_FIREBASE=b'%PDF-1.7rn%xb5xb5xb5xbype/Cat ....... '  

pdfFileObj = open('example.pdf', 'wb')     
pdfFileObj.write(DATA_FROM_FIREBASE)    
pdfFileObj.close()
  

Комментарии:

1. спасибо, это сработало, но есть ли способ сделать это без создания нового файла, потому что мне нужно поработать с этими данными? таким образом, я извлекаю данные из хранилища, затем сохраняю в файл, а затем вызываю этот файл и работаю с данными. Заранее благодарю вас!

2. PyPDF2 — один из лучших вариантов, потому что многие справки / примеры представлены в Интернете. вы можете установить, используя эту ссылку: pypi.org/project/PyPDF2