【发布时间】:2018-07-30 07:32:02
【问题描述】:
我有一个烧瓶应用程序,它将读取一些数据帧并在前端显示一些输出。我有两个routes。一个将接受user input 并发送到第二条路线。第二条路线利用此输入并处理一些dataframe 并提供一些输出。问题是,如果再次进入用户输入页面并且我尝试提交另一个input,它会给我page not working 错误。
是因为内存问题吗?如果我重新启动我的服务器,然后我重复一次(每次我需要重新启动)。
from flask import flash, redirect, render_template, url_for, request, jsonify
import math
import os
import glob
import pandas as pd
from . import fa
from database import connection
UPLOAD_DIRECTORY = './uploads'
if not os.path.exists(UPLOAD_DIRECTORY):
os.makedirs(UPLOAD_DIRECTORY)
@fa.route('/fc', methods=['GET', 'POST'])
def index():
return render_template('fc.html',flag=0)
@fa.route('/fc/s', methods=['GET', 'POST'])
def start():
if request.method == 'POST':
material_number = request.form['ma']
path = UPLOAD_DIRECTORY
extension = 'xlsx'
os.chdir(path)
result = [i for i in glob.glob('*.{}'.format(extension))]
allFiles = result
frame = pd.DataFrame()
list_ = []
for file_ in allFiles:
df = pd.read_excel(file_)
list_.append(df)
frame = pd.concat(list_)
frame = frame.reset_index(drop=True)
df1 = frame[frame['Ma'].str.contains(ma,regex=True)]
pr = df1['Pr'].unique().tolist()
pro = pd.read_excel(r'~pathhiddn~\dtrvsproj.xlsx')
return render_template('fc.html',flag=1,ma=ma,prs=pr)
return redirect(url_for('fa.index'))
【问题讨论】:
-
调试你的代码,检查哪一行,它停止工作,比如在你对数据框做某事之前/之后,以及在返回之前放置打印语句,并确定它卡在哪里。
-
我们可以看看你的日志中的错误是什么吗?
-
我的理解是for循环部分有问题..直到它运行良好
-
当我从
path = UPLOAD_DIRECTORY到pro = pd.read_excel(r'~pathhiddn~\dtrvsproj.xlsx')删除所有代码时,它工作正常 -
df = pd.read_excel(file_) list_.append(df)这些行导致问题.....
标签: python pandas dataframe flask flask-restful