U
    aʋf                     @   s   d dl mZmZmZmZ d dlZd dlZd dlZd dl	m
Z
 eeZe
e eddd Zejddgd	d
d Zedkrejdsed ejdd dS )    )Flaskrequest	send_filejsonifyN)CORS/c                   C   s   t ddiS )Nmessagez*Welcome to the PDF to Excel converter API!)r    r	   r	   #/var/www/html/python-plumber/app.pyhome   s    r   z/uploadPOST)methodsc               
   C   s^  dt jkrtddidfS t jd } | jdkr>tddidfS | rZtjdsZtd tjd| j}| 	| |
dd	}zt|H}g }t|jd
dD ].\}}| }|D ]}t|}	||	 qqW 5 Q R X tj|dd}
d|
jkr|
jdgd}
|
j|dd t|ddW S  tk
rX } ztdt|idf W Y S d }~X Y nX d S )NfileerrorzNo file parti   zNo selected fileuploadsz.pdfz.xlsx   )startT)Zignore_indexZPage)columnsF)index)as_attachmenti  )r   filesr   filenameospathexistsmakedirsjoinsavereplace
pdfplumberopen	enumerateZpagesZextract_tablespdZ	DataFrameappendconcatr   ZdropZto_excelr   	Exceptionstr)r   Zpdf_pathZ
excel_pathZpdfZ
all_tablesZpage_numZpageZtablestableZdfZcombined_dfer	   r	   r
   upload_file   s4    





r*   __main__r   T)debug)flaskr   r   r   r   r    Zpandasr#   r   Z
flask_corsr   __name__approuter   r*   r   r   r   runr	   r	   r	   r
   <module>   s   

(
