在HTML网页中运行python方法

Run python method in HTML web page

本文关键字:python 方法 运行 HTML 网页      更新时间:2023-09-26

我有一个带有按钮的HTML页面。此网页正在Flask上运行。我想做的是,当用户按下一个按钮时,我想调用Python方法。

主.py

from flask import url_for, Flask, render_template
app = Flask(__name__)
@app.route('/')
def hello_world():
    return render_template('tour.html')
if __name__ == '__main__':
    app.run(debug=True)
def first():
    global todayDate
    parseWemake(*Wemake.wemakeData())
    parseCoupang(*Coupang.coupangData())
    parseTmon(*Tmon.tmonData())

tour.html

<button>Click</button>

我现在在这里迷路了。我只想在点击html上的按钮时调用first()方法。

提前谢谢。

这是不可能的。

因为"点击"发生在浏览器中,但"第一次"运行在您的服务器上。

您需要的是一个html表单或ajax请求。

我找到了在flask上运行python脚本(方法)的方法,而且非常简单。只需在flask函数中导入python文件。如果你正在开发一个包含许多python类的页面,可能会有一些限制,但这个解决方案解决了我的问题。

from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index(name=None):
    return render_template('tour.html',name=name)
@app.route('/exec')
def parse(name=None):
    import Parse
    print("done")
    return render_template('tour.html',name=name)

if __name__ == '__main__':
    app.run(host='0.0.0.0')
    app.debug = True

tour.html

<a href="/exec"> This link will invoke Parse method </a>

这将在点击按钮时运行"Parse.py"。

它在本地运行得很好,现在我要在heroku服务器上进行测试。使用这种方式会有什么问题吗?