如何用 PyWebIO 引导用户填写并自动生成 json 配置文件?

你开发的了一个工具,工具在使用前需要配置一些参数 为此你详细的写了一份,详细到自己都不一定看的文档... ... 也许你可以试试 PyWebIO !快速构建友好的配置填写前端~

前言

当你写好了一个自动化工具,准备分享给你的同事或者朋友使用

你详细的写了一份文档,并进行了一次分享,告诉大家要如何配置这个工具

但是,只要是输入,就有出错的可能

能不能在提供一个简单的引导,来一步步的辅助工具的使用者,正确的配置工具的使用参数呢?

这样既能减少使用者的学习成本,也能减轻工具开发者的维护成本

也许你可以试试它

PyWebIO

简单介绍一下

PyWebIO 提供了一系列命令式的交互函数来在浏览器上获取用户输入和进行输出,将浏览器变成了一个“富文本终端”,可以用于构建简单的 Web 应用或基于浏览器的GUI应用。

使用 PyWebIO,开发者能像编写终端脚本一样(基于input和print进行交互)来编写应用,无需具备 HTML 和 JS 的相关知识;

PyWebIO 还可以方便地整合进现有的 Web 服务。非常适合快速构建对 UI 要求不高的应用。

官方提供了一个用 pywebio 构建的 【BMI 体脂计算器】 演示站点

特性

  1. 使用同步而不是基于回调的方式获取输入,代码编写逻辑更自然
  2. 非声明式布局,布局方式简单高效
  3. 代码侵入性小,旧脚本代码仅需修改输入输出逻辑便可改造为 Web 服务
  4. 支持整合到现有的Web服务,目前支持与Flask、Django、Tornado、aiohttp、 FastAPI(Starlette)框架集成
  5. 同时支持基于线程的执行模型和基于协程的执行模型
  6. 支持结合第三方库实现数据可视化

我们尝试实现一个简单的应用场景吧

借助 pywebio 生成一份 json 配置信息

生成效果

当我们运行 gen_json.py 文件后,浏览器弹出了一个窗口

如何用 PyWebIO 引导用户填写并自动生成 json 配置文件?

工具的使用者,可以根据代码的指引,填入相应的信息

如果配置文件发生了变动,可以只用修改 input_group 输入组的内容

后记

当然 pywebio 不只有 input 输入框功能,这是官方手册提供的,基本涵盖了常见的输入场景:

函数 简介
input 文本输入
textarea 多行文本输入
select 下拉选择框
checkbox 勾选选项
radio 单选选项
slider 滑块输入
actions 按钮选项
file_upload 文件上传
input_group 输入组
input_update 更新输入项

pywebio 的参考文档十分详细,并且有中文翻译

当然,不止可以用于生成 json 配置文件 配合相关的模块 yaml、toml、ini 等配置文件,也能简单的引导用户配置

参考

  1. pywebio 官方文档
-> 加入科技玩家交流群组:点击加入 注意:
1.文中二维码和链接可能带有邀请性质,请各位玩家自行抉择。
2.请勿通过链接填写qq号与密码、银行卡号与密码等个人隐私信息。
3.禁止纯拉人头,拉app注册等信息,发现必小黑屋。
4.同一种信息仅发一次,多发会被删除。
5.文章中源码或APP等,无法保证其绝对安全,需自行辨别。
6.文章关联方不想展示也可以微信站长“socutesheep”删除。
本文由 @日薅一毛 发布。如若转载,请注明出处: 科技玩家 » 如何用 PyWebIO 引导用户填写并自动生成 json 配置文件?

给TA买糖
共{{data.count}}人
人已买糖
教程玩家投稿

超牛CKTool工具轻松抓gold东wskey

2023-1-23 18:56:19

教程玩家投稿

云打包系统 欢迎安装体验 具体看演示

2023-2-2 23:33:49

27 条回复 A文章作者 M管理员
贴心提醒
请认真对待作者付出,勿发表无意义言论,触发过滤规则的评论将无法提交,包含敏感词的评论会自动变成待审核状态哦。
  1. 无华

    学习一下

  2. 小生

    学习xu

  3. 幻念

    这真是个好文章,谢谢

  4. slimei

    感谢分享,插眼学习

  5. 萝卜头

    谢谢,分享学习了

  6. 画中人

    学习学习

  7. 84896150

    楼主辛苦了,感谢分享

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索