翼度科技»论坛 编程开发 python 查看内容

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

8

主题

8

帖子

24

积分

新手上路

Rank: 1

积分
24
作者:京东零售 关键

Q&A快速了解PyWebIO
Q:首先,什么是PyWebIO?
APyWebIO提供了一系列命令式的交互函数,能够让咱们用只用Python就可以编写 Web 应用, 不需要编写前端页面和后端接口, 让简易的UI开发效率大大提高(本人非研发,用词可能不妥,大家轻点喷)

Q:其次,我们能用来干嘛?? 这对一个团队的效率提升有什么作用??
APywebio的作用在于让咱们可以快速的开发一个带有UI界面的,支持用户输入的,以既定的逻辑输出结果的应用。 那么,我们是不是可以将团队内一些机械性的数据处理,数据异动分析等的工作以既定逻辑的方式通过Pywebio输出一个可复用的应用给大家使用呢? 当然,日常的数据运营过程中,咱们肯定不是面对着一成不变的case。 那么,我们是不是可以用不同参数输入的方式来达到一定的泛用性拓展呢? 只要,case和case之间的底层逻辑是一致的,我们就可以用同一套逻辑,不同的入参来达到不同结果输出的获取。
Exampl 倘若,我们每天都有一项工作,每天对着一份又一份业务反馈的订单,然后部门需要对着这些订单本身进行一个初步的风险分层,我们是不是可以把风险分层的底层规则写在后端,然后通过PywebIO来支持不同情况下的不同规则阈值输入, 快速获取咱们所需要的风险分层结果。 (当然,如果数据允许,直接写SQL也可以,可是,SQL需要一定的门槛,而PywebIO则可以通过UI的方式分享给那些没有技术背景的运营人员进行0代码使用。)

以下正式开始用一个例子来逐步介绍PywebIO拓展包
简介

虚拟背景: 每天需要一份又一份地对业务反馈的样本来进行风险分层,为了提高处理效率。
计划方案: 通过现有风险标签的波尔标签,非波尔标签体系来搭建一个支持 灵活配置阈值来快速获取分层结果的UI应用。
方案简介:基本逻辑如下,(以下均为举例所示,并不代表该方案就可以进行风险分层哈,大家请注意)




开始实现:这里的例子采取的是非数据库模式,支持的是上传本地csv,然后进行阈值配置。
Step one:本地文件上传

首先,肯定是得先文件上传的代码。
  1. ##例子如下:
  2. import pandas as pd
  3. from pywebio.input import *
  4. from pywebio import start_server
  5. from pywebio.output import *
  6. import nest_asyncio
  7. import numpy as np
  8. import os
  9. import time
  10. nest_asyncio.apply()
  11. import pandas as pd
  12. from pywebio.input import *
  13. from pywebio import start_server
  14. from pywebio.output import *
  15. import nest_asyncio
  16. import numpy as np
  17. import os
  18. import time
  19. nest_asyncio.apply()
  20. def read_csv():
  21.     put_markdown('# 只支持pin')
  22.     put_markdown('功能如下:')
  23.     put_markdown("""
  24. - 选择与程序再**同一文件夹**的文件
  25. - 输入你希望卡的风险值阈值 **不输入则默认-10**
  26. - 自动加载解析输出极黑标签占比以及明细数据
  27. - 请勾选你所需要的标签**(不勾选=全选)**,然后点击提交即可
  28.     """)
  29.     file = file_upload('只支持上传该程序所在文件夹的csv文件哦', '.csv')
  30.     ## 本地文件
  31.    
  32.     raw_data = pd.read_csv(os.getcwd() + "" + file['filename'], encoding='gbk')
  33.     put_html(raw_data.to_html())
  34.    
  35. if __name__ == '__main__':
  36.     start_server(read_csv, port=8081, debug=True, cdn=False, auto_open_webbrowser=True)
复制代码
允许代码后,因为” auto_open_webbrowser=True“,所以自动弹出一个WebUI,如下左图,选择上传的文件,即可看到下右图的文件数据




来源:https://www.cnblogs.com/Jcloud/p/17029467.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具