2022-07-08 Python HTTP服务器

Python创建HTTP服务器接收文件上传

项目地址:
服务器:https://gitee.com/premeditate/HF21029OCR.git
客户端:https://gitee.com/premeditate/HF21029AR-OCR.git

背景

服务器:Python
客户端:Android

Python编写服务器程序,客户端上传图像到服务器中,Python通过OCR模块识别图像中的文字,并将结果返回到客户端。

使用flask 模块创建HTTP服务器

from flask import Flask
from flask import request
from matplotlib import pyplot as plt

from org.venus.ocr.src.util import ipUtils

app = Flask(__name__)

#指定接口的访问路径和请求方式
@app.route('/ocr', methods=['POST'])
def handle():
    #如果是get请求,request.args可以获取到请求的参数,通过get("key")函数获取到参数值
    #args = request.args.get("key")
    #如果是post请求,request.form可以获取到请求的参数,通过get("key")函数获取到参数值
    #form = request.form.get("key")
    #request.files可以获取到请求中上传的文件,结果是一个列表
    files = request.files
    for fileName in files:
        #request.files.get("key"),可以根据参数名称获取到指定的文件,这里拿到的是文件的流数据
        file = request.files.get(fileName)
        #笔者这里上传的是一个图片,使用plt.imread()函数,可以直接将流数据转换为一个图片对象
        img = plt.imread(file)
        #后续可以对你的文件进行处理,比如保存等.笔者这里是对图像进行OCR识别
        #...
    return "result"

serverIp = "172.20.10.3"
serverPort = 8091

def run():
    #获取本机的IP地址
    ip = ipUtils.getIp()
    #启动HTTP服务器
    app.run(host=ip, port=serverPort, debug=False)

你可能感兴趣的:(2022-07-08 Python HTTP服务器)