我已经设置了一个基本的Flask页面,index.html来运行我的app.py脚本。目录结构是包含app.py的myapp文件夹,包含index.html的templates文件夹和一个venv文件夹。我试图获取我的app.py脚本(下载一个excel文件,它在ipython中自行运行时运行),点击一个GO按钮运行。我可以很容易地在localhost上运行,并且index.html出现了按钮,但当我点击它时,我得到 - “内部服务器错误服务器遇到内部错误,无法完成您的请求。服务器是否过载或者申请中有错误。“
我已经尝试了很长时间,并查看其他类似的问题但无济于事。app.py的代码如下:
#!/usr/bin/env python
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
@app.route('/app', methods=['GET', 'POST'])
def app():
import selenium
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver.chrome.options import Options
import lxml
import time
import datetime
import pandas as pd
from bs4 import BeautifulSoup
options = Options()
options.headless = True
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://widget.sentryd.com/widget/#/15490A29-95E3-4296-999E-28D0B35E0D12/AUD-USD/4')
time.sleep(10)
soup1 = BeautifulSoup(driver.page_source, 'lxml')
table1 = soup1.find_all('table')
df1 = pd.read_html(str(table1[1]), header=0)
df1[0].columns = ['Delta_put', 'Price_put', 'Strike', 'Price_call', 'Delta_call', 'Vol', 'Skew', 'Vega']
df1[0].drop(0, inplace=True)
writer = pd.ExcelWriter('options_{}.xlsx'.format(pd.datetime.today().strftime('%d %b %y')), engine='xlsxwriter')
df1[0].to_excel(writer, 'Sheet1')
writer.save()
return 'Downloading...'
if __name__ == '__main__':
app.run()
index.html的代码是
据错误,您似乎没有安装所需的模块和包来运行您的应用程序。
你在这里导入它们:
@app.route('/app', methods=['GET', 'POST'])
def app():
import selenium
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver.chrome.options import Options
import lxml
import time
import datetime
import pandas as pd
from bs4 import BeautifulSoup
您应该使用首选安装方法安装这些模块。您可以使用它pip来安装它们。
所以转到项目的环境,打开控制台并安装它们。
pip install beautifulsoup4
pip install selenium
pip install pandas
pip install lxml
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。