تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
2 الردود
12239 أدوات العرض

The scenario is this,

I have a class with binary field,

file_to_import = fields.Binary('File')

file_to_import_fname = fields.Char('Filename')

The file to be submitted to this field is in predefine format and if of type PDF.

I have a button next to the binary field in view, Import. The related action uses tabula, parse through file and retrieve table contents in it and create records.

How do I pass the base64 encoded string to Tabula. The line to read PDF contents in tabula is,

df = tabula.read_pdf(file_to_import, output_format="json", pages="all")

الصورة الرمزية
إهمال
الكاتب أفضل إجابة

I can read the contents of the file with this technique.

pdf_file = open('/tmp/pdffile.pdf','w')
pdf_file.write((base64.b64decode(obj.file_to_import)))
pdf_file.close()

df = tabula.read_pdf("/tmp/pdffile.pdf", output_format="json", pages="all")

الصورة الرمزية
إهمال
أفضل إجابة

That's a very good trick. I will try that on. Thanks.

الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
1
يونيو 25
382
2
مايو 25
872
1
مايو 25
527
0
أبريل 25
756
1
أبريل 25
753