从Web运行Python脚本

前端之家收集整理的这篇文章主要介绍了从Web运行Python脚本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
近一年来,我一直在绊倒同样的问题.我总能找到解决问题的方法,但我已经厌倦了寻找工作.

我需要的是在服务器上运行python脚本的Web页面(更好的HTML,而不是PHP或ASP)上创建一个按钮.我也希望能够让这个按钮从表单向脚本发送信息.

我需要在本地主机上以及通过Amazon Cloud上托管的Web服务执行此操作.我将无法在Amazon Cloud服务上安装任何额外内容,例如PHP或CGI.

我真的很喜欢一个简单的解决方案,我是python的专家,我可以编写吹口哨的网页,但我找不到解决这个问题的简单方法.

我理想的解决方案就像邮件标记

  1. <a href="mailto:someone@example.com?Subject=Hello%20again">Send Mail</a>

除了:

  1. <a href="myscript.py?Subject=1234">Run Script</a>

现在我非常怀疑这样的解决方案存在,但我能做得对.

我试图运行的脚本:

>从用户返回唯一ID
>将ID发送到GIS程序,该程序根据ID创建地图(ID选择地图区域)
>然后将地图导出为PNG,写入HTML文档,然后在新选项卡中为用户显示.

编辑—————————

感谢@Ketouem的回答,我找到了一个很好的解决方案来解决我的问题.我会在这里发布一些代码,以便其他人可以受益.确保你下载了python的Bottle Module,它很棒.

  1. # 01 - Import System Modules
  2. from bottle import get,post,request,Bottle,run,template
  3.  
  4. # 02 - Script Variables
  5. app = Bottle()
  6.  
  7. # 03 - Build Temporary Webpage
  8. @app.route('/SLR')
  9. def login_form():
  10. return '''<form method="POST" action="/SLR">
  11. Parcel Fabric ID: <input name="UID" type="text" /><br />
  12. Save Location: <input name="SaveLocation" type="text" value="D:/Python27/BottleTest/SLR_TestOutputs"/><br />
  13. Air Photo On: <input name="AirPhoto" type="checkBox"/><br />
  14. Open on Completion: <input name="Open" type="checkBox"/><br />
  15. Scale: <input name="Scale" type="text" value="10000"/><br />
  16. <input type="submit" />
  17. </form>'''
  18.  
  19. # 04 - Return to GIS App
  20. @app.route('/SLR',method='POST')
  21. def PHPH_SLR_Script():
  22. # I won't bother adding the GIS Section of the code,but at this point it send the variables to a program that makes a map. This map then saves as an XML and opens up in a new tab.
  23.  
  24. # 04 - Create and Run Page
  25. run(app,host='localhost',port=8080)

解决方法

您可以使用Bottle: http://bottlepy.org/docs/dev/index.html这是一个轻量级的Web框架

猜你在找的HTML相关文章