实现web前端上传excel文件到flask服务器

实现web前端上传excel文件到flask服务器,第1张

实现web前端上传excel文件到flask服务器

这里有两种方法:1. html方式;2. javascript方式(jQuery+ajax)

第1种方法:html方式

这种方法直接通过设计form表单相关属性实现将excel表格上传到服务器,并在服务器端通过xlrd等excel文件处理模块读取数据

    前端页面示例代码(注意:form元素中的enctype="multipart/form-data"不可或缺)



   
   Title





    后台示例代码展示
@app.route('/toexcel',methods = ['GET','POST'])
def toExcel():
    if request.method == 'POST':
        file = request.files.get('file')
        f = file.read()
        data_file = xlrd.open_workbook(file_contents=f)
        # sheet1
        table = data_file.sheet_by_index(0)
        # print(table)
        # print(table.nrows) # 获取该sheet中的有效行数
        for row_num in range(0, table.nrows):
            print(table.row_values(row_num))
        return redirect('/index') # 根据具体问题返回不同内容
    return redirect('/index') # 根据具体问题返回不同内容
第2中方法: javascript方式(jQuery+ajax)

这种方法利用FormData获得数据,通过ajax将数据上传到flask服务器端,再通过xlrd等excel文件处理模块读取数据。

    前端页面关键代码(注意:form元素中的enctype="multipart/form-data"不可或缺)


    后台示例代码展示
@app.route('/toexcel', methods=['GET', 'POST'])
def toExcel():
   if request.method == 'POST':
       data = request.files.get('file')
       f = data.read()
       data_file = xlrd.open_workbook(file_contents=f)
       # sheet1
       table = data_file.sheet_by_index(0)
       # 输出每一行的内容
       # table.nrows获取该sheet中的有效行数
       for row_num in range(0, table.nrows):
           print(table.row_values(row_num))
       return ... # 根据具体问题返回数据
   return ... # 根据具体问题返回数据

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5712122.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存