我是python的初学者。出于练习原因,我想学习如何将python代码上传到网站。 我有一个域名和网络托管服务,但我真的很困惑如何将我的代码与一个集成 我网站上的网页。
(我对Tkinter有一点不错的知识) 谁能告诉我如何将这个简单的功能上传到我的网站?: 界面上有两个条目供用户输入两个数字。按一个新按钮 窗口(网页),显示答案。
谢谢。
答案 0 :(得分:1)
这是一个非常简单的服务器端Python脚本。要使用它,请将其放在服务器上的cgi-bin
文件夹中。 (稍后可以将其配置为在其他位置运行,但cgi-bin
通常可以开箱即用。)然后通过chmod
或某些Gui控件更改文件的权限。您需要允许任何人执行它,因此755
会这样做。然后导航到http://domain.tld/cgi-bin/myscript.py。
#!/usr/bin/python
print "Content-type: text/html"
print
print "<pre>"
import os, sys
from cgi import escape
print "<strong>Python %s</strong>" % sys.version
keys = os.environ.keys()
keys.sort()
for k in keys:
print "%s\t%s" % (escape(k), escape(os.environ[k]))
print "</pre>"
如果可行,您可以继续使用框架(如web.py)运行更复杂的脚本,并回复表单。
要回答实际问题,我们需要一个带有表单的页面。我是从我使用的模板制作的,并添加了一个带有单个输入字段的表单。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Webpage</title>
<meta name="description" content="html5 webpage">
<meta name="author" content="">
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
<form action="/cgi-bin/test.py">
<input name="mystuff" width="500px" />
<input type="submit" value="Do" />
</form>
</body>
</html>
注意它指向我们的test.py
脚本。这也需要更新,以便它理解我们的mystuff
表单元素。我们抛出一些错误处理并导入我们的cgi模块。 except
部分是懒得完成的,但由于你不会使用代码的那部分,我认为这并不重要。
print "Content-type: text/html"
print
print "<pre>"
import os, sys
import cgi, cgitb
cgitb.enable()
form = cgi.FieldStorage()
try:
num = int(form['mystuff'].value)
print 'The number %d to the 13th power is %d.' % (num, num**13)
except Exception:
print 'What am I suposed to do with that? This is what you call an "err
or message". Try a number instead'
print "</pre>"
您应该可以转到您的网页并在字段中输入7,这将导致包含...的页面
7号到13号的数字是96889010407。
希望有所帮助。
答案 1 :(得分:0)
我建议你看看像Django和mod_wsgi这样的东西。
如果您具有对服务器的shell访问权限,通常会有帮助。