【问题标题】:Python CGI With Data Return [closed]具有数据返回的 Python CGI [关闭]
【发布时间】:2015-09-22 07:00:09
【问题描述】:
我正在尝试完成以下工作:
- 通过 Python 从模块中提取信息。 [已完成]
- 不断从 Python 中提取信息以用于 HTML。
- 避免在打印语句中编写整个 HTML/CSS/JS 文档。
我见过 CGI 这个术语,但并不真正理解它是如何工作的。简单地说,我想运行返回整数值的 Python 脚本。然后我想将该整数值带入 JavaScript,以便它可以更新指定的标签。它应该能够每两秒执行一次 Python 脚本,接收输出,然后将其应用到页面。我不想一次写一行就用 Python 写出整个 HTML 文档,因为我看到有些人在我找到的网站上这样做。
似乎做这样的事情比它应该做的要复杂得多。该页面应该运行,调用脚本以获取其输出,然后将输出提供给我以供使用。
【问题讨论】:
标签:
javascript
python
html
cgi
【解决方案1】:
好吧,如果您不知道 CGI 是什么,并且发现您所要求的内容“比应有的复杂得多”,那么您首先必须学习 HTTP 协议,显然,这是扩展 SO 的方法回答。
基本上你想要的需要:
- html 文档
- 一些 javascript 代码,从文档链接或嵌入到文档中
- 提供文档(和 javascript)的 Web 服务器
- 知道如何调用 python 脚本并将结果作为 HTTP 响应返回的 Web 服务器(当然可以与前一个相同) - 这可以完成使用普通 CGI 或使用 wsgi 或 fcgi 连接器,在您的情况下,CGI 可能就足够了。
然后在浏览器中,您的 javascript 代码必须每隔 x 秒向托管 Python 脚本的 Web 服务器发出一个 GET 请求 (ajax) 并相应地更新 DOM。
这都是普通的网络编程,正如我所说,对HTTP协议有一个基本的了解是起点。
【解决方案2】:
尝试从头开始写任何东西,如果你对这个主题一无所知,总是会很复杂。
这就是为什么有一整个世界的工具可以帮助您。我认为您根本不需要 CGI。查看 Python 微框架之一,特别是 Flask。那里的教程应该会给你你需要的介绍。