【问题标题】:Is it possible to run python in the web with github.io?是否可以使用 github.io 在 Web 中运行 python?
【发布时间】:2014-08-09 10:01:00
【问题描述】:

我想在 GitHub 存储库中的网络上运行一个 python 文件。可以这样做吗?

通过在网络上运行,我的意思是把#!/usr/bin/pythonprint 'Content-type:text/html\n 放在前两行。

【问题讨论】:

  • 这有点不清楚——你在寻找类似Github Pages 的东西吗?或者您是否尝试使用 python 脚本生成可在网页上查看的输出?对于后者,您需要使用像瓶子或烧瓶这样的网络服务器

标签: python web github


【解决方案1】:

一般来说这是不可能的,Github(页面)只提供静态内容(例如:HTML、CSS、JS)。如果你想让 python 运行(例如生成动态内容),你需要一个能够运行 python 的网络服务器(你的浏览器是 GitHub Pages 的内容被下载并运行无法做到)。

也就是说,有一些实验方法可以在浏览器中运行 python 的子集。查看this question 的示例。

【讨论】:

  • 那么角度材料页面呢?
  • @NabinKhadka 是的,这是可能的,因为 Angular 是一种前端技术。静态代码(HTML、CSS、JS)从 GitHub 下载到浏览器并在那里运行。
  • 谢谢你。会深入研究。 +1
  • 谢谢你。这是否意味着在 GitHub 页面提供静态内容的情况下,浏览器除了是客户端之外,也是 HTTP 服务器?
【解决方案2】:

如果您真的想通过标准输出生成完整的 HTTP 响应,那么请先阅读 CGI 和 Python 的标准 cgi module。您还需要能够访问与 CGI 兼容的 Web 服务器,可能在虚拟主机上运行。

但是,CGI 作为一种为 Web 生成动态输出的方式已经过时了。 @jjwon 建议像 Flask 一样查看 Python-based web application frameworks 是一个很好的建议。

【讨论】:

  • 哦,是的,我以前用过cgi,你知道如何让它和github一起工作吗?
  • “让它与 github 一起工作”是什么意思?您是否尝试将 GitHub 的服务器用作您的个人 Web 服务器?他们不太可能对此感到冷静。 :-P
  • “CGI 已经过时了”,当然是这样,但它遵循了 KISS 原则。
  • @user877329,我不明白。我推荐它是因为它是对原始问题的字面解决方案,但我怀疑它不是 真的 OP 正在寻找的东西:-P
猜你喜欢
  • 1970-01-01
  • 2013-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-14
  • 2014-09-14
  • 1970-01-01
相关资源
最近更新 更多