Spaces:
Runtime error
Runtime error
| from flask import Flask, request, jsonify, render_template, url_for, redirect, send_from_directory | |
| from werkzeug.utils import secure_filename | |
| from datetime import datetime | |
| import os | |
| from pyngrok import ngrok | |
| import scoringModule | |
| UPLOAD_FOLDER = './audio'#儲存音檔的資料夾 | |
| AUDIO_DIRECTORY = 'templates/audio' #儲存音檔的資料夾 | |
| app = Flask(__name__, template_folder='./templates') | |
| def index(): | |
| now = datetime.now() #讀取當前時間 | |
| fileName = now.strftime("%Y-%m-%d%H-%M%S") + ".mp3" #以現在時間作為檔名 | |
| global nowtime | |
| nowtime = fileName #傳入全域變數中 | |
| print(nowtime) | |
| return render_template('index1.html') #index1的路徑 | |
| def upload_file(): | |
| file = request.files['AUDIO'] #從網頁抓取使用者輸入的語音 | |
| print(type(file)) | |
| global nowtime | |
| fileName = nowtime #放入剛進入介面時產生的檔名 | |
| file.filename = fileName #將檔名設為現在時間 | |
| print('file.filename:',file.filename) | |
| fileurl = os.path.join(UPLOAD_FOLDER, file.filename) #找到檔案要存的絕對路徑 | |
| print('fileurl:',fileurl) | |
| file.save(fileurl) #儲存檔案 | |
| return redirect(url_for('end')) #將頁面重新導向到'/result' | |
| def serve_audio(filename): | |
| # 返回音檔 | |
| return send_from_directory(AUDIO_DIRECTORY, filename) | |
| def index3(): | |
| return render_template('index3.html') | |
| def index4(): | |
| return render_template('index4.html') | |
| def end(): | |
| global nowtime | |
| fileName = nowtime #放入剛進入介面時產生的檔名 | |
| fileurl = os.path.join(UPLOAD_FOLDER, fileName) #獲取檔案儲存的位置路徑 | |
| result, text = scoringModule.scoring(fileurl) | |
| if result == -1: | |
| return render_template('index4.html',word_str=result)#index4的路徑 | |
| else: | |
| return render_template('index2.html',word_str=result ,word_dict=text)#index2的路徑 | |
| if __name__=='__main__': | |
| public_url = ngrok.connect(5000) | |
| print("Public URL:", public_url) | |
| app.run(debug=True, use_reloader=False) |