如何从Firebase存储-Python中获取PDF数据?

时间:2019-03-24 11:27:08

标签: python google-cloud-storage firebase-storage

我正在尝试从Firebase / google存储中获取pdf文件数据到我的代码中。

这是我到目前为止所做的

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.7\r\n%\xb5\xb5\xb5\xb5\r\n1 0 obj\r\n<</Type/Catalog/Pages 2 0 R/Lang(en-US) /StructTreeRoot 15 0 R/MarkInfo<</Marked true>>/Metadata 44 0 R/ViewerPreferences 45 0 R>>\r\nendobj\r\n2 0 obj\r\n<</Type/Pages/Count 1/Kids[ 3 0 R] >>\r\nendobj\r\n3 0 obj\r\n<</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>>\r\nendobj\r\n4 0 obj\r\n<</Filter/FlateDecode/Length 3283>>\r\nstream\r\nx\x9c\xb5\\[O\xdcH\x16~G\xe2?\xd4c{\x97v\\\xbe[BH\x81$\xb3\x8c\x16)+\xc8\x8eF3\xfb`h\x87xc\x1a\xb6\xdb$\xdb\xf9\xf5[\xe7\xd4\xdd\xae\xa2![\x8c\x14\x04n\xb7\xab\xea\\\xbe\xf3\x9d\x8b\x87\xbc\xf9H\x8e\x8f\xdf\\\x9c\x9d\xbf#\xc9\xc9\t9}wF\xfesx\x90\xc4\t\xfc\xd7\xd0\x94$\xa4d?\xab&%\x9b\xee\xf0\xe0\xb7\xbf\x90\xf5\xe1\xc1\xe9\xd5\xe1\xc1\x9b\x0f\x94\xb0\x0f\xae>\x1f\x1ePvSB(\xa9\xd28I\x0bR%u\x9cW\xe4\xea\x8e\xdd\xf4\xcbeEn\xb7\xec\x81\xe4\x16\xff\xaa\xc5_\xbf\x1c\x1e\xfc\xb1x\x17-\x9bE\xd7n\xa2e\xb9 ....... '

1 个答案:

答案 0 :(得分:1)

您必须使用这种类型的概念将这些数据另存为PDF文件。

""" PDF DATA VAR """
DATA_FROM_FIREBASE=b'%PDF-1.7\r\n%\xb5\xb5\xb5\xbype/Cat ....... '  

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