Lưu tệp yêu cầu Python

Đây là Ứng dụng Flask Python đơn giản để tải lên các tệp ở nhiều định dạng khác nhau như CSV, XLS, XLSX, PDF, JPG, PNG, GIF, TXT và lưu các tệp đó vào Hệ thống tệp

Ứng dụng được thiết kế với giao diện đơn giản để tải lên tệp ở bất kỳ định dạng nào đã nói ở trên. Các phần mở rộng hoặc định dạng tệp được hỗ trợ có thể được sửa đổi trong mã

Các tệp đã tải lên sẽ được lưu vào một thư mục có tên upload_dir trên thư mục hiện tại nơi đặt và bắt đầu Mã ứng dụng Flask. Vị trí này có thể được sửa đổi cho phù hợp với nhu cầu của bạn

upload_dir sẽ được tạo nếu chưa có. Vị trí Lưu thực tế sẽ giống như upload_dir/08061910

Trong đó  08 –  Ngày hiện tại, 06 – Tháng hiện tại, 19 – Năm hiện tại, 10 – Giờ hiện tại

Nó sẽ tạo một thư mục mới cho mỗi giờ mới [chỉ khi tệp đang được tải lên]. Nếu hai hoặc nhiều tệp được tải lên cùng một giờ, cùng một thư mục sẽ được sử dụng

Đây là Ảnh chụp màn hình mẫu về Kết quả cuối cùng của chúng tôi

Không có quảng cáo thêm. Đây là mã

Mục lục

Mã Flask Python để tải lên tệp

Đây là mã ứng dụng Flask. Lưu tệp này với tên FileCollect.py

import os
import datetime
import subprocess
from flask import Flask, flash, request, redirect, url_for
from werkzeug.utils import secure_filename

app = Flask[__name__]
app.secret_key = b'_5#y2L"F4Q8z\n\xec]iasdfffsd/'

ALLOWED_EXTENSIONS = set[['txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif', 'csv']]



def CreateNewDir[]:
    print "I am being called"
    global UPLOAD_FOLDER
    print UPLOAD_FOLDER
    UPLOAD_FOLDER = UPLOAD_FOLDER+datetime.datetime.now[].strftime["%d%m%y%H"]
    cmd="mkdir -p %s && ls -lrt %s"%[UPLOAD_FOLDER,UPLOAD_FOLDER]
    output = subprocess.Popen[[cmd], shell=True,  stdout = subprocess.PIPE].communicate[][0]

    if "total 0" in output:
        print "Success: Created Directory %s"%[UPLOAD_FOLDER] 
    else:
        print "Failure: Failed to Create a Directory [or] Directory already Exists",UPLOAD_FOLDER

def allowed_file[filename]:
    return '.' in filename and \
           filename.rsplit['.', 1][1].lower[] in ALLOWED_EXTENSIONS

@app.route['/', methods=['GET', 'POST']]
def upload_file[]:
    if request.method == 'POST':
        # check if the post request has the file part
        if 'file' not in request.files:
            flash['No file part']
            return redirect[request.url]
        file = request.files['file']
        # if user does not select file, browser also
        # submit an empty part without filename
        if file.filename == '':
            flash['No selected file']
            return redirect[request.url]
        if file and allowed_file[file.filename]:
            filename = secure_filename[file.filename]
            UPLOAD_FOLDER = './upload_dir/'
            CreateNewDir[]
            global UPLOAD_FOLDER
            file.save[os.path.join[UPLOAD_FOLDER, filename]]
            return redirect[url_for['uploaded_file',
                                    filename=filename]]
    return '''
    
    Upload new File
    

Upload new File

'''
@app.route['/uploaded', methods=['GET', 'POST']] def uploaded_file[]: return ''' Uploaded the file

File has been Successfully Uploaded

'''
if __name__ == '__main__': app.secret_key = 'super secret key' app.config['SESSION_TYPE'] = 'filesystem' sess.init_app[app] app.debug = True app.run[]

 

Bắt đầu và dừng ứng dụng và máy chủ Flask

Nói chung, ba bước này là đủ để khởi động Ứng dụng Flask

$ export FLASK_APP=FileCollect.py
$ export FLASK_ENV=development
$ flask run

Nhưng nó không phải là cách hiệu quả. Vì vậy, tôi đã xây dựng một số Tập lệnh Shell Wrapper xung quanh điều này để Bắt đầu và Dừng Máy chủ và Ứng dụng Flask của tôi

 

Shell Script – Flask-Manage. sh

Đây là Tập lệnh Shell để Dừng và Khởi động Ứng dụng Flask. Nó đọc các tham số Khởi động cần thiết như

  • Hành động nào để thực hiện?
  • Tệp Python là gì?
  • Môi trường Khởi nghiệp là gì {PROD. nhà phát triển}?

 

#!/bin/bash
BASEDIR=`dirname $0`

Action=$1
Infile=$2
Environment=$3

function startserver
{
export FLASK_ENV=$Environment
export FLASK_APP=$Infile

#flask run – host=0.0.0.0 – port=80
flask run – host=0.0.0.0 – port=5000
}

function stopserver
{
  ps -eaf|grep -i "flask run"|grep -iv grep|awk '{print $2}'|xargs kill -9
}

if [ $Action == "Start" -o $Action == "start" -o $Action == "START" ]
then
    echo "Starting the Server"
    startserver > $BASEDIR/flask.log 2>&1 &
    exit
elif [ "$Action" == "Stop" -o  "$Action" == "stop" -o "$Action" == "STOP" ]
then
   echo  "Stopping the Server"
   stopserver >> $BASEDIR/flask.log
fi

Để khởi động máy chủ trong môi trường phát triển, hãy sử dụng lệnh sau

$ export FLASK_APP=FileCollect.py
$ export FLASK_ENV=development
$ flask run
0

Để khởi động máy chủ trong môi trường sản xuất

$ export FLASK_APP=FileCollect.py
$ export FLASK_ENV=development
$ flask run
1

Để dừng Máy chủ đang chạy, hãy sử dụng lệnh sau [Giết tất cả các quy trình chạy Flask đang chạy cục bộ]

$ export FLASK_APP=FileCollect.py
$ export FLASK_ENV=development
$ flask run
0

 

Tệp nhật ký

Trên cùng một thư mục chứa Code và Flask-Manage Script. sẽ có ____11 tệp chứa nhật ký Truy cập và Gỡ lỗi của Ứng dụng và Máy chủ Flask của bạn

 * Serving Flask app "FileCollect.py"
 * Environment: DEV
 * Debug mode: off
 * Running on //0.0.0.0:5000/ [Press CTRL+C to quit]

 

Bản ghi đoạn mã lệnh – Video demo

Đây là Video Demo về việc sử dụng Ứng dụng Tải lên Flask này


Hi vọng điêu nay co ich

Xếp hạng bài viết này [xếp hạng]

Cảm ơn,
Sarav AK

Theo dõi chúng tôi trên Facebook hoặc Twitter
Để biết thêm các video và hướng dẫn thực tế. Đăng ký kênh của chúng tôi
Theo dõi tôi trên Linkedin Hồ sơ của tôi
Để được tư vấn hoặc thuê chúng tôi
Nếu bạn thích bài viết này. Thể hiện sự hỗ trợ của bạn. Mua cho tôi một ly cà phê.

Đăng ký nội dung độc quyền "chỉ dành cho người đăng ký"

Tên*

E-mail*

Thêm từ Khoảng không quảng cáo phần mềm trung gian

  • Ứng dụng web Java mẫu - Tệp chiến tranh để triển khai và kiểm tra

    Tổng quan Bài đăng này nói về ứng dụng web Java J2EE và bắt đầu bằng việc giải thích Ứng dụng web là gì và tại sao chúng được gọi là tệp WAR và Cấu trúc thư mục tiêu chuẩn của ứng dụng web hoặc tệp WAR và tệp WAR bao gồm những gì, v.v. và tiếp tục

  • Ứng dụng web mẫu với xác thực dựa trên biểu mẫu - Từng bước

    Thiết kế ứng dụng WEB với bảo mật dựa trên trình duyệt web là rất phổ biến. Có ba loại phương thức Xác thực thường được sử dụng như sau Xác thực Cơ bản Xác thực Dựa trên Biểu mẫu Xác thực Chứng chỉ Máy khách SSL Hầu hết các Ứng dụng Web đang sử dụng phương thức Xác thực Dựa trên Biểu mẫu trong đó người dùng sẽ gửi thông tin xác thực của họ thông qua…

  • ansible tìm kiếm chuỗi trong tệp hoặc kiểm tra xem chuỗi có tồn tại trong tệp không

    Mục tiêu của bài đăng này là chỉ ra cách tìm kiếm một chuỗi trong một tệp với ansible. ansible cung cấp nhiều cách khác nhau để thực hiện cùng một. Chúng tôi sẽ đề cập đến ba cách chính để tìm kiếm một chuỗi trong một tệp. Mô-đun Lineinfile Sử dụng mô-đun Shell và lệnh grep…

  • Máy chủ Từ xa - Trình nghe Hệ thống Tệp [Linux]

    Bạn đã bao giờ có yêu cầu đăng nhập vào Nsố máy chủ từ xa [không có xác thực dựa trên khóa ] và lấy thông tin về điểm gắn kết và lưu dưới dạng Báo cáo CSV [hoặc] In thông tin đó với định dạng bảng điều khiển tốt. Sau đó cái này là dành cho bạn. Về cơ bản, Nó là một tập lệnh Shell […

  • Tập lệnh Trạng thái Ứng dụng Weblogic WLST

    Để có được trạng thái ứng dụng đã triển khai trong miền Weblogic, bạn có thể sử dụng tập lệnh python sau và chạy nó với WLST. Nó có Định dạng đẹp và bài đăng này cũng đề cập đến "Cách bỏ qua hoặc tránh các thông báo thông tin weblogic khi chạy tập lệnh WLST" Sao chép Tập lệnh được cung cấp bên dưới…

    Bình lưu các tệp đã tải lên ở đâu?

    Các tệp đã tải lên sẽ được lưu vào một thư mục có tên upload_dir trên thư mục hiện tại nơi Mã ứng dụng Flask được đặt và bắt đầu . Vị trí này có thể được sửa đổi cho phù hợp với nhu cầu của bạn. Nó sẽ tạo một thư mục mới cho mỗi giờ mới [chỉ khi tệp đang được tải lên].

    Làm cách nào để sử dụng Secure_filename?

    Đặt cho nó một tên tệp và nó sẽ trả về một phiên bản bảo mật của nó . Sau đó, tên tệp này có thể được lưu trữ an toàn trên hệ thống tệp thông thường và được chuyển đến os. con đường.

Chủ Đề