Python 有没办法实现像 PHP 一样一个脚本文件==一个网页, stdout 直接输出到网页上?这个设计真不错

342 天前
drymonfidelia  drymonfidelia
2003 次点击
所在节点   Python  Python
17 条回复
tomczhen
tomczhen
342 天前
文艺复兴,CGI 模块都被弃用了。非要弄也容易,文件路由,配合模板输出就行。
flyqie
flyqie
342 天前
真文艺复兴了。。

python cgi 都多久没人用了。。
drymonfidelia
drymonfidelia
342 天前
@tomczhen 我知道可以这么做,有没有现成的框架,现在的框架好像都是类似 MVC 那种结构
drymonfidelia
drymonfidelia
342 天前
拿到了一堆控制台输入输出的屎山脚本,想快速批量转成 API 方便调用
@flyqie
mightybruce
mightybruce
342 天前
这个不限于框架了,简单点用重定向,或者启动一个子进程通过管道把结果传过来,方法很多。
drymonfidelia
drymonfidelia
342 天前
@mightybruce 拿 Flask 写了一个,没办法并发,一个请求会把整个线程卡住,打补丁也不行
mightybruce
mightybruce
342 天前
脚本属于阻塞式执行, 你要么搞个异步执行任务,得到结果返回通知,否则没有办法。
drymonfidelia
drymonfidelia
342 天前
@mightybruce 我想到的办法是拿 php 调用 python ,但两个语言我都不是非常熟
drymonfidelia
drymonfidelia
342 天前
php 的 cgi 能做到请求间互不影响
mightybruce
mightybruce
342 天前
cgi 是协议,和语言无关, 现在还用 cgi 的也是老古董了,可以参考这个试试
https://www.jianshu.com/p/62f0b9a3dd3e

然后要么参考一下分布式任务执行框架如 celery 。
FYFX
FYFX
341 天前
@drymonfidelia #6 可以用支持异步的 python web 框架试试
dayeye2006199
dayeye2006199
341 天前
模板引擎,传统的 Django 那套
realJamespond
realJamespond
341 天前
FreeMarker 了解下
Belmode
Belmode
341 天前
模板引擎,Jinja2 + Django 或者 Flask ,正合适
8355
8355
341 天前
所以干嘛不用 php
EMMMMMMMMM
EMMMMMMMMM
341 天前
哈哈, NGINX 做足够了吧
tomczhen
tomczhen
341 天前
php 不受影响是因为走的 php-fpm + fastcgi ,用 php-cli 的 -S 参数启动一样阻塞。

用一个 wsgi server 库(比如: waitress )来启动 flask 并指定多个 worker/thread ,也可以不阻塞。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1024885

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX