【团队效率提升】Python-PyWebIO介绍

作者:京东零售关键
Q&A快速了解PyWebIO
Q:首先 , 什么是PyWebIO?
A:PyWebIO提供了一系列命令式的交互函数 , 能够让咱们用只用Python就可以编写Web应用,不需要编写前端页面和后端接口,让简易的UI开发效率大大提高(本人非研发 , 用词可能不妥 , 大家轻点喷)
Q:其次 , 我们能用来干嘛??这对一个团队的效率提升有什么作用??
A:Pywebio的作用在于让咱们可以快速的开发一个带有UI界面的 , 支持用户输入的 , 以既定的逻辑输出结果的应用 。 那么 , 我们是不是可以将团队内一些机械性的数据处理 , 数据异动分析等的工作以既定逻辑的方式通过Pywebio输出一个可复用的应用给大家使用呢?当然 , 日常的数据运营过程中 , 咱们肯定不是面对着一成不变的case 。 那么 , 我们是不是可以用不同参数输入的方式来达到一定的泛用性拓展呢?只要 , case和case之间的底层逻辑是一致的 , 我们就可以用同一套逻辑 , 不同的入参来达到不同结果输出的获取 。
Exampl倘若 , 我们每天都有一项工作 , 每天对着一份又一份业务反馈的订单 , 然后部门需要对着这些订单本身进行一个初步的风险分层 , 我们是不是可以把风险分层的底层规则写在后端 , 然后通过PywebIO来支持不同情况下的不同规则阈值输入 , 快速获取咱们所需要的风险分层结果 。 (当然 , 如果数据允许 , 直接写SQL也可以 , 可是 , SQL需要一定的门槛 , 而PywebIO则可以通过UI的方式分享给那些没有技术背景的运营人员进行0代码使用 。 )
以下正式开始用一个例子来逐步介绍PywebIO拓展包
简介
虚拟背景:每天需要一份又一份地对业务反馈的样本来进行风险分层 , 为了提高处理效率 。
计划方案:通过现有风险标签的波尔标签 , 非波尔标签体系来搭建一个支持灵活配置阈值来快速获取分层结果的UI应用 。
方案简介:基本逻辑如下 , (以下均为举例所示 , 并不代表该方案就可以进行风险分层哈 , 大家请注意)
【团队效率提升】Python-PyWebIO介绍
文章图片
开始实现:这里的例子采取的是非数据库模式 , 支持的是上传本地csv , 然后进行阈值配置 。
Stepone:本地文件上传
首先 , 肯定是得先文件上传的代码 。 ##例子如下:importpandasaspdfrompywebio.inputimport*frompywebioimportstart_serverfrompywebio.outputimport*importnest_asyncioimportnumpyasnpimportosimporttimenest_asyncio.apply()importpandasaspdfrompywebio.inputimport*frompywebioimportstart_serverfrompywebio.outputimport*importnest_asyncioimportnumpyasnpimportosimporttimenest_asyncio.apply()defread_csv():put_markdown('#只支持pin')put_markdown('功能如下:')put_markdown("""-选择与程序再**同一文件夹**的文件-输入你希望卡的风险值阈值**不输入则默认-10**-自动加载解析输出极黑标签占比以及明细数据-请勾选你所需要的标签**(不勾选=全选)** , 然后点击提交即可""")file=file_upload('只支持上传该程序所在文件夹的csv文件哦','.csv')##本地文件raw_data=https://pcff.toutiao.jxnews.com.cn/p/20230106/pd.read_csv(os.getcwd()+""+file['filename'],encoding='gbk')put_html(raw_data.to_html())if__name__=='__main__':start_server(read_csv,port=8081,debug=True,cdn=False,auto_open_webbrowser=True)
【团队效率提升】Python-PyWebIO介绍】允许代码后 , 因为”auto_open_webbrowser=True“ , 所以自动弹出一个WebUI , 如下左图 , 选择上传的文件 , 即可看到下右图的文件数据
【团队效率提升】Python-PyWebIO介绍
文章图片
????
【团队效率提升】Python-PyWebIO介绍