Spaces:
Build error
Build error
Streamlit has an error with multiple table download buttons
#2
by
shamikbose89
- opened
app.py
CHANGED
@@ -381,7 +381,7 @@ class TableExtractionPipeline():
|
|
381 |
return df.to_csv().encode('utf-8')
|
382 |
|
383 |
|
384 |
-
def create_dataframe(self, c3, cells_pytess_result:list, max_cols:int, max_rows:int):
|
385 |
'''Create dataframe using list of cell values of the table, also checks for valid header of dataframe
|
386 |
Args:
|
387 |
cells_pytess_result: list of strings, each element representing a cell in a table
|
@@ -419,7 +419,7 @@ class TableExtractionPipeline():
|
|
419 |
|
420 |
c3.dataframe(df)
|
421 |
csv = self.convert_df(df)
|
422 |
-
c3.download_button("Download table", csv, "file.csv", "text/csv", key='download-csv')
|
423 |
|
424 |
return df
|
425 |
|
@@ -447,7 +447,7 @@ class TableExtractionPipeline():
|
|
447 |
self.plot_results_detection(c1, model, image, probas, bboxes_scaled, delta_xmin, delta_ymin, delta_xmax, delta_ymax)
|
448 |
cropped_img_list = self.crop_tables(image, probas, bboxes_scaled, delta_xmin, delta_ymin, delta_xmax, delta_ymax)
|
449 |
|
450 |
-
for unpadded_table in cropped_img_list:
|
451 |
|
452 |
table = self.add_padding(unpadded_table, padd_top, padd_right, padd_bottom, padd_left)
|
453 |
# table = super_res(table)
|
@@ -477,7 +477,7 @@ class TableExtractionPipeline():
|
|
477 |
cells_pytess_result = await asyncio.gather(*sequential_cell_img_list)
|
478 |
|
479 |
|
480 |
-
self.create_dataframe(c3, cells_pytess_result, max_cols, max_rows)
|
481 |
st.write('Errors in OCR is due to either quality of the image or performance of the OCR')
|
482 |
# except:
|
483 |
# st.write('Either incorrectly identified table or no table, to debug remove try/except')
|
|
|
381 |
return df.to_csv().encode('utf-8')
|
382 |
|
383 |
|
384 |
+
def create_dataframe(self, c3, cells_pytess_result:list, max_cols:int, max_rows:int, table_num: int):
|
385 |
'''Create dataframe using list of cell values of the table, also checks for valid header of dataframe
|
386 |
Args:
|
387 |
cells_pytess_result: list of strings, each element representing a cell in a table
|
|
|
419 |
|
420 |
c3.dataframe(df)
|
421 |
csv = self.convert_df(df)
|
422 |
+
c3.download_button("Download table", csv, "file.csv", "text/csv", key=f'download-csv-{table_num}')
|
423 |
|
424 |
return df
|
425 |
|
|
|
447 |
self.plot_results_detection(c1, model, image, probas, bboxes_scaled, delta_xmin, delta_ymin, delta_xmax, delta_ymax)
|
448 |
cropped_img_list = self.crop_tables(image, probas, bboxes_scaled, delta_xmin, delta_ymin, delta_xmax, delta_ymax)
|
449 |
|
450 |
+
for table_num, unpadded_table in enumerate(cropped_img_list):
|
451 |
|
452 |
table = self.add_padding(unpadded_table, padd_top, padd_right, padd_bottom, padd_left)
|
453 |
# table = super_res(table)
|
|
|
477 |
cells_pytess_result = await asyncio.gather(*sequential_cell_img_list)
|
478 |
|
479 |
|
480 |
+
self.create_dataframe(c3, cells_pytess_result, max_cols, max_rows, table_num)
|
481 |
st.write('Errors in OCR is due to either quality of the image or performance of the OCR')
|
482 |
# except:
|
483 |
# st.write('Either incorrectly identified table or no table, to debug remove try/except')
|