我有一段用Python编写的代码。我想将该代码放在网页中。 Brython似乎是将两个东西粘合在一起的最简单方法,但我没有可以在服务器端实际运行代码的服务器。
Brython是否需要服务器端代码,或者我可以用便宜的方式托管使用它的页面(例如)Dropbox?
答案 0 :(得分:28)
Brython很新,而且正在快速变化。但是,您可以在没有服务器端代码的任何地方使用它。
一些可能性:
为了清楚起见,您的服务器上不需要python。如果你无法链接到brython.js文件,你可以在你的网页中包含javascript。
至于语言支持,它确实支持所有基础知识并且支持类,列表推导以及一些不那么明显的东西,如eval,dis等。有一个stdout和stderr默认为Web浏览器控制台,但是可以被重定向(请参阅brython站点上的控制台以获取该示例)。它通过JSObject与javascript库集成得很好。它有很好的HTML5支持。
英语和西班牙语文档落后于法语文档,因为它们是用法语翻译的。他们应该在接下来的几天内重新同步。不过,如果你看一下console和gallery,它会让你体验到可能的东西。
在brython网站上链接了邮件列表,以便在遇到问题时提供支持。
我会提供更多示例和链接,但我是新手,所以我对超链接的限制。
答案 1 :(得分:5)
Brython本身似乎完全是客户端,但这是否足够取决于你编写的代码。它不是一个完整的Python解释器,也没有库。您可能希望后端支持它或使用评论中建议的其他客户端解决方案。
鉴于真正的网络托管服务商支持Python的数量很少,我认为Dropbox不太适合这种情况,以防您需要在服务器上进行处理。
答案 2 :(得分:2)
我已经学会了Brython并不总是使用python代码。
我认为需要澄清的是,虽然您可以通过本地访问文件来运行非常有限的brython(由于AJAX要求),但您无法导入库 - 甚至不是最基本的库(例如, html,时间)。你真的需要一个基本的Web服务器才能运行brython。
我发现它对基本脚本有好处,因为我的python比我的JS好。但它似乎打破了更复杂的语法。
答案 3 :(得分:2)
是的,brython完全是副本。 是的,您可以将它与Dropbox一起使用。 您需要做的是将公共链接复制到brython.js文件并将其放在html文件的head标记中,默认文本为:
<script src=...
将公共链接放在引号中并关闭脚本标记。 所以代码看起来像:
<html>
<head>
<script src="Public Dropbox Link To The brython.js File"></script>
</head>
<body onload="brython()">
<script type="text/python">
from browser import document, alert
def echo(event):
alert(document["zone"].value)
document['mybutton'].bind('click', echo)
</script>
<input id="zone"><button id="mybutton">click !</button>
</body>
</html>
这是他们在页面上给出的例子。 note 您不需要在您的保管箱上安装html文件,它可以在任何可以访问互联网的地方。