Exemplo n.º 1
0
def fileview():
    #checks the upload and stores it to the upload folder
    if request.method == 'POST':
        if 'files' not in request.files:
            flash('No file part')
            return redirect(request.url)
        #requested files and pdf mode are retrieved from flask
        fileList = request.files.getlist('files')
        filenameFP_List = []
        for uploadedFile in fileList:
            if uploadedFile.filename == '':
                flash('No selected inputfile')
                return redirect(request.url)
            if uploadedFile and check_file_extension(uploadedFile.filename,
                                                     ALLOWED_EXTENSIONS):
                filenameFP = secure_filename(uploadedFile.filename)
                print "filenameFP:", filenameFP
                filenameFP_List.append(filenameFP)

        if debugMode.lower() == "yes":
            print "filenameFP_List:", filenameFP_List
            print "OUTPUT_FOLDER:", OUTPUT_FOLDER
        filenameFP_List = natsort.natsorted(filenameFP_List)
        result = createResultView(OUTPUT_FOLDER, filenameFP_List, 2)

        return Response(result, content_type='text/xml; charset=utf-8')

    return "Error: Results not found"
Exemplo n.º 2
0
def getimage():
    # checks the upload and stores it to the upload folder
    if request.method == 'POST':
        if 'files' not in request.files:
            flash('No file part')
            return redirect(request.url)

        # requested files and pdf mode are retrieved from flask
        fileList = request.files.getlist('files')
        securefname = secure_filename(fileList[0].filename)

        if os.path.splitext(securefname)[1].lower() == ".pdf":
            filenameFP_List = []
            for uploadedFile in fileList:
                if uploadedFile.filename == '':
                    flash('No selected inputfile')
                    return redirect(request.url)
                if uploadedFile and check_file_extension(
                        uploadedFile.filename, ALLOWED_EXTENSIONS):
                    filenameFP = secure_filename(uploadedFile.filename)
                    filenameFP_List.append(filenameFP)

            allFilenames3 = os.listdir("images")
            allFilenames3 = natsort.natsorted(allFilenames3)
            filenameFP_List = natsort.natsorted(filenameFP_List)
            tempFilesList = []
            for currFile1 in filenameFP_List:
                for currFile2 in allFilenames3:
                    if currFile1[:-4] in currFile2:
                        tempFilesList.append(currFile2)

                if debugMode.lower() == "yes":
                    print "tempFilesList:", len(tempFilesList)

                tempFilesList = filterCropFiles(tempFilesList)
                if len(tempFilesList) != 0:
                    latestFileNames = findLatest(tempFilesList)

                    if debugMode.lower() == "yes":
                        print "latestFileNames:", latestFileNames

                    currDir = os.getcwd()
                    os.chdir(LOCDB + "images/")
                    memory_file = BytesIO()
                    with zipfile.ZipFile(memory_file, 'w') as zf:
                        for individualFile in latestFileNames:
                            zf.write(individualFile)
                    os.chdir(currDir)
                    memory_file.seek(0)
                    return send_file(memory_file,
                                     attachment_filename=currFile1[:-4] +
                                     '.zip',
                                     as_attachment=True)
                else:
                    return "Error: No Files Found..."
        else:
            return "Wrong File Type: Please upload a pdf file"

    return "Error: Results not found"
Exemplo n.º 3
0
def fileupload():
    #checks the upload and stores it to the upload folder
    if request.method == 'POST':
        if 'files' not in request.files:
            flash('No file part')
            return redirect(request.url)
        #requested files and pdf mode are retrieved from flask
        fileList = request.files.getlist('files')
        if request.form.get('pdfFlag'):
            Settings[0] = "IMG"
        else:
            Settings[0] = "TXT"
        if request.form.get('Txt_Dummy'):
            Settings[1] = "True"
        else:
            Settings[1] = "False"
        #if request.form.get('colBool'):
        #Settings[2] = str(int(request.form.get('colNumb')) - 1)
        #else:
        #Settings[2] = "0"
        autoview = False
        if request.form.get('autoviewResults'):
            autoview = True
        filenameFP_List = []
        filenameString = ""
        for uploadedFile in fileList:
            if uploadedFile.filename == '':
                flash('No selected inputfile')
                return redirect(request.url)
            if uploadedFile and check_file_extension(uploadedFile.filename,
                                                     ALLOWED_EXTENSIONS):
                filenameFP = secure_filename(uploadedFile.filename)
                print 'Uploaded inputfile : ' + filenameFP
                writeUserLog("Uploaded inputfile : " + filenameFP)
                #adding timestamp
                ts = datetime.now().strftime('%Y%m%d%H%M%S')
                filenameFP = ts + "_" + filenameFP
                writeLog(filenameFP, Settings, False)
                uploadedFile.save(os.path.join(UPLOAD_FOLDER, filenameFP))
                filenameFP_List.append(filenameFP)
                filenameString += filenameFP + "\n"

        processFile(UPLOAD_FOLDER, OUTPUT_FOLDER, MAX_PROCESSES, Settings,
                    filenameFP_List)

        #sync process
        result = createResultView(OUTPUT_FOLDER, filenameFP_List)
        return Response(result, content_type='text/xml; charset=utf-8')

        if autoview:
            return render_template("form_submitocr.html",
                                   waiting="1",
                                   filesText=filenameString)
        else:
            return updateHTML()

    return "Error"
Exemplo n.º 4
0
def fileupload():
    print ""
    print ""
    print "----------------------------------------"
    print "request: ", request
    print "request.files: ", request.files
    print "request.url: ", request.url
    print "request.form: ", request.form
    print "----------------------------------------"
    print ""
    print ""
    #checks the upload and stores it to the upload folder
    if request.method == 'POST':
        if 'files' not in request.files:
            flash('No file part')
            return redirect(request.url)
        #requested files and pdf mode are retrieved from flask
        fileList = request.files.getlist('files')
        if request.form.get('pdfFlag'):
            Settings[0] = "IMG"
        else:
            Settings[0] = "TXT"
        if request.form.get('Txt_Dummy'):
            Settings[1] = "True"
        else:
            Settings[1] = "False"
        if request.form.get('colBool'):
            Settings[2] = str(int(request.form.get('colNumb')) - 1)
        else:
            Settings[2] = "0"
        filenameFP_List = []
        for uploadedFile in fileList:
            if uploadedFile.filename == '':
                flash('No selected inputfile')
                return redirect(request.url)
            if uploadedFile and check_file_extension(uploadedFile.filename,
                                                     ALLOWED_EXTENSIONS):
                filenameFP = secure_filename(uploadedFile.filename)
                print 'Uploaded inputfile : ' + filenameFP
                #adding timestamp
                ts = datetime.now().strftime('%m%d%H%M%S')
                filenameFP = ts + "_" + filenameFP
                writeLog(filenameFP, Settings, False)
                uploadedFile.save(os.path.join(UPLOAD_FOLDER, filenameFP))
                filenameFP_List.append(filenameFP)
        processFile(UPLOAD_FOLDER, OUTPUT_FOLDER, MAX_PROCESSES, Settings,
                    filenameFP_List)
        return mergeOutputXML(OUTPUT_FOLDER, filenameFP_List)
        #return redirect("/")

    return "Error"
Exemplo n.º 5
0
def getimage():
    # checks the upload and stores it to the upload folder
    if request.method == 'POST':
        if 'files' not in request.files:
            flash('No file part')
            return redirect(request.url)
        # requested files and pdf mode are retrieved from flask
        fileList = request.files.getlist('files')
        securefname = secure_filename(fileList[0].filename)
        # print "securefname",securefname,type(securefname)
        # print "fileList[0]",fileList[0]
        # print "+++++++++++++++++++++",os.path.splitext(securefname)[1].lower()
        if os.path.splitext(securefname)[1].lower() == ".pdf":
            #print "Correct File Format..."
            filenameFP_List = []
            for uploadedFile in fileList:
                if uploadedFile.filename == '':
                    flash('No selected inputfile')
                    return redirect(request.url)
                if uploadedFile and check_file_extension(
                        uploadedFile.filename, ALLOWED_EXTENSIONS):
                    filenameFP = secure_filename(uploadedFile.filename)
                    filenameFP_List.append(filenameFP)

            resultList = []
            missList = []
            # find files
            for file in filenameFP_List:
                found = False
                for folder in os.listdir("output"):
                    if file in folder:
                        resultList.append(folder)
                        found = True
                if not found:
                    missList.append(file)
            if len(missList) > 0:
                return "Error: No such processed file found with name ", missList[
                    0]
            results = findLatest(resultList)
            #print "results :",results
            image_path = OUTPUT_FOLDER + results[0] + "/" + results[0] + ".png"
            if os.path.isfile(image_path):
                return send_file(image_path, mimetype="image/png")
            else:
                return "Error: No such processed file found with name ", results[
                    0]
        else:
            return "Wrong File Type: Please upload a pdf file"

    return "Error"
Exemplo n.º 6
0
def fileupload():
    if debugMode.lower() == "yes":
        print ""
        print "####################################"
        print "In fileupload()"
        print "####################################"
        print ""

    #checks the upload request parameters and stores it to the upload folder
    if request.method == 'POST':
        if 'files' not in request.files:
            flash('No file part')
            return redirect(request.url)
        #requested files and pdf mode are retrieved from flask
        fileList = request.files.getlist('files')
        if request.form.get('pdfFlag'):
            Settings[0] = "IMG"
        else:
            Settings[0] = "TXT"
        if request.form.get('Txt_Dummy'):
            Settings[1] = "True"
        else:
            Settings[1] = "False"

        autoview = False
        if request.form.get('autoviewResults'):
            autoview = True
        filenameFP_List = []
        filenameString = ""
        for uploadedFile in fileList:
            if uploadedFile.filename == '':
                flash('No selected inputfile')
                return redirect(request.url)
            if uploadedFile and check_file_extension(uploadedFile.filename,
                                                     ALLOWED_EXTENSIONS):
                filenameFP = secure_filename(uploadedFile.filename)
                print 'Uploaded inputfile : ' + filenameFP
                print ""
                writeUserLog("Uploaded inputfile : " + filenameFP)
                #adding timestamp
                ts = datetime.now().strftime('%Y%m%d%H%M%S')
                filenameFP = ts + "_" + filenameFP
                writeLog(filenameFP, Settings, False)
                uploadedFile.save(
                    os.path.join(LOCDB + UPLOAD_FOLDER, filenameFP))
                filenameFP_List.append(filenameFP)
                filenameString += filenameFP + "\n"
            else:
                return "Error: Invalid file extension..."
        try:
            job = q.enqueue_call(func=processFile,
                                 args=(
                                     UPLOAD_FOLDER,
                                     OUTPUT_FOLDER,
                                     MAX_PROCESSES,
                                     Settings,
                                     filenameFP_List,
                                 ),
                                 result_ttl=8000,
                                 timeout=80000)
            print(job.get_id())

            return job.get_id()

            #sync process
            filenameFP_List = natsort.natsorted(filenameFP_List)
            result = createResultView(OUTPUT_FOLDER, filenameFP_List)
            return Response(result, content_type='text/xml; charset=utf-8')
        except:
            return "An Error occured during file processing..."

        if autoview:
            return render_template("form_submitocr.html",
                                   waiting="1",
                                   filesText=filenameString)
        else:
            return updateHTML()

    return "Error"