欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

手把手教你用Python写一个在线网站,这真的很装逼!

程序员文章站 2022-05-04 13:17:27
在做我们的工作之前先来了解一下flask框架是怎样的一个运行机制吧: 首先创建一个flaskrun.py文件(先写个demo,后面在这个基础上改改,就可以作为网站后端的接口了) 那我们现在就可以去访问路由了,现在我们想访问index方法,我们就输入路由: 如果我们想访问hello方法,这个时候我们就 ......
手把手教你用Python写一个在线网站,这真的很装逼!

 

pip install Flask

在做我们的工作之前先来了解一下flask框架是怎样的一个运行机制吧:

首先创建一个flaskrun.py文件(先写个demo,后面在这个基础上改改,就可以作为网站后端的接口了)

手把手教你用Python写一个在线网站,这真的很装逼!

 

手把手教你用Python写一个在线网站,这真的很装逼!

 

那我们现在就可以去访问路由了,现在我们想访问index方法,我们就输入路由:

手把手教你用Python写一个在线网站,这真的很装逼!

 

如果我们想访问hello方法,这个时候我们就需要加上/hello的路由了:

手把手教你用Python写一个在线网站,这真的很装逼!

 

这样我们就进入了/hello的方法了,每个方法对应一个路由,包含最后一个post也是一样:

手把手教你用Python写一个在线网站,这真的很装逼!

 

手把手教你用Python写一个在线网站,这真的很装逼!

 

当然还有一些其他的错误,例如400,500,405等错误,我们都可以捕捉:

手把手教你用Python写一个在线网站,这真的很装逼!

 

ok,flask介绍完毕,我们下面进入正轨了,用subprocess来写python了。创建一个文件叫:pyol.py

手把手教你用Python写一个在线网站,这真的很装逼!

 

在默认情况下都是以utf-8的情况下进行编码。

下面我们需要将用户写进来的python代码写入文件:

def write_file(pyname, code):

fpath = os.path.join(TempFile, '%s.py' % pyname)

with open(fpath, 'w', encoding='utf-8') as f:

f.write(code)

print('file path: %s' % fpath)

return fpath

手把手教你用Python写一个在线网站,这真的很装逼!

 

但是实际上这个临时文件本身也会自动删除,这步其实也算是多余的。这样我们的python就写好了。下面只需要把它加入路由,把用户输入的数据以post的方式提交即可。

手把手教你用Python写一个在线网站,这真的很装逼!

 

我们指定他的路由为/run,采用post的方式传递数据,调用刚刚写的主函数的执行代码,来执行用户传入的code,最后将执行结果返回给用户。

最后我们运行代码:

if __name__ == '__main__':

app.run(host='0.0.0.0',port=1234,debug=True)

最后完整加上优化后代码如下:

pyol.py

手把手教你用Python写一个在线网站,这真的很装逼!

 

flaskrun.py

手把手教你用Python写一个在线网站,这真的很装逼!

 

我们现在需要借助postman来看一下run的结果,首先我们先run一下代码

(flask run):

手把手教你用Python写一个在线网站,这真的很装逼!

 

之后我们打开postman

手把手教你用Python写一个在线网站,这真的很装逼!

 

瞬间就完成了。

之后我们只要写个前端,把这个接口给前端调就大功告成了!

进群:125240963   即可获取数十套PDF哦!