PyWebIO v1.3.0 使用手册
7.45 MB
132 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
中文(简体) | .epub | 3 |
摘要 | ||
PyWebIO是一款支持快速构建基于浏览器的交互式应用的Python框架,它允许开发者像编写控制台程序一样使用Python代码进行Web开发。框架通过命令式API提供输入输出功能,支持与Flask、Django、Tornado等Web框架集成,并采用WebSocket或Http协议进行服务器-客户端通信。PyWebIO提供了丰富的示例和部署方法,适用于构建简单的Web应用或GUI工具。 | ||
AI总结 | ||
《PyWebIO v1.3.0 使用手册》主要介绍了PyWebIO的功能、使用方法及特性。以下是文档的核心内容总结:
### 1. 简介
PyWebIO是一个通过Python代码在浏览器中实现交互的库,允许开发者像编写终端脚本一样构建Web应用,无需HTML和JavaScript知识。其特点包括:
- 使用命令式API,支持输入输出函数如`put_text`、`put_image`、`input`等。
- 支持点击事件、布局等功能,提供良好的用户体验。
- 可与Flask、Django、Tornado、aiohttp、FastAPI等Web框架集成。
---
### 2. 功能概述
#### 1. **输入输出**
- **输入函数**:定义在`pywebio.input`模块,通过表单获取用户输入,阻塞式调用,类似Python内置`input`函数。
- 示例:`input("How old are you?", type=NUMBER)`
- **输出函数**:通过`put_xxx`系列函数输出内容,如文本、图片、表格等。
#### 2. **会话与并发**
- 支持多线程和协程,Session会话结束后调用`defer_call`清理资源。
- Session关闭时,未完成的PyWebIO调用会抛出`SessionClosedException`。
#### 3. **通信协议**
- 使用WebSocket或HTTP通信:
- **WebSocket**:适用于Tornado或aiohttp后端,实时交互。
- **HTTP**:适用于Flask或Django后端,客户端通过轮询获取消息。
#### 4. **部署模式**
- **Server模式**:适合基于Web框架的应用,输入输出函数仅能在任务函数上下文中调用。
- **Script模式**:在脚本中自由调用交互函数,支持多线程。
---
### 3. 安装与示例
- **安装**:
- 稳定版:`pip3 install -U pywebio`
- 开发版:`pip3 install -U https://code.aliyun.com/wang0618/pywebio/repository/archive.zip`
- **示例**:
- BMI指数计算:`from pywebio.input import input, FLOAT; from pywebio.output import put_text`
- 输入演示、输出演示、聊天室等,详见[Demo地址](http://pywebio-demos.demo.wangweimin.site/)。
---
### 4. 更新日志
- **v1.1新功能**:
- 安全性支持:`put_html()`、`put_markdown()`添加`sanitize`参数防止XSS攻击。
- 国际化支持、SEO支持、CDN支持等。
- 提升应用访问速度,修复`file_upload`参数解析错误。
- **破坏性变更**:
- 移除`start_server()`中的`disable_asyncio`参数。
- 废弃`pywebio.session.data()`,使用`pywebio.session.local`存储会话状态。
---
### 5. Web框架集成
支持与主流Web框架结合:
- **Tornado**:使用`webio_handler()`绑定WebSocketHandler。
- **Flask/Django**:通过HTTP通信集成。
- **FastAPI/Starlette**:支持协程模式。
---
### 6. 使用建议
- 遇到问题时,可以先思考“在终端程序中会怎么做”,PyWebIO的实现方式类似。
- 使用`pin`模块解决复杂布局问题。
---
通过以上内容,用户可以快速了解PyWebIO的核心功能及使用方法,适合快速构建基于浏览器的交互式应用。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
125 页请下载阅读 -
文档评分