学习python也很久了,无论是基础python语法、还是flaskweb编程、数据血缘关系、人工智能的知识,以及常用web前端、还有工作中零零散散的一些想法,想来想去还是觉得付诸行动更有意义。
初步的想法先从简单的入手,基于flask实现,先整一个基本的web框架,实现页面的动态扩展,上中(左右)下布局,左侧为静态的菜单,右侧为待展现的内容,在右侧页面中再实现一个个小功能,这些小功能用来实现与用户的交互。
后期待完成的事项
逐步把通过json、数据库实现菜单的优化
实现css、js和html的分离
实现flask的蓝图、flask的模板化、flask的ORM映射
增强前端交互功能,实现分页
不断追加和完善功能
大致的架构是这样的,后续。
上半部分是css,下半部分是页面的主框架,具体如下:
-
- "en">
-
- "UTF-8" />
-
个人知识库 -
-
-
- "main">
- "main-area">
- "main-area-content clearfix">
- "logobar">logobar
- "left-menu fl">
- "list">
-
"menu"
> -
-
-
- "content-box fl">
- "main" style="height:99%;">
- name="mainFrame" id="mainFrame" scrolling="auto" src="index.html" width="99%" height="99%"> 您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。
-
-
- "statusbar">底部
-
-
-
-
-
左侧的菜单代码如下:
上面部分是菜单的折叠和呈现,下面是菜单的一些数据
-
-
- /head>
-
-
"menu"
> -
- "#"
class="inactive active">PDF工具 -
-
- "daohang5.html"
target="mainFrame" title="PDF转图片">PDF转图片 -
- "PDF提取文字.html"
target="mainFrame" title="PDF提取文字">PDF提取文字 -
- ".html"
target="mainFrame" title="">PDF提取表格 -
-
-
- "#"
class="inactive">血缘关系 -
-
- "图谱2.html"
target="mainFrame" title="">全景展示 -
- ".html"
target="mainFrame" title="">节点查询 -
-
-
- "#"
class="inactive">自然语言处理组件 -
-
- ".html"
target="mainFrame" title="">分词 -
- ".html"
target="mainFrame" title="">词性 -
- ".html"
target="mainFrame" title="">词云 -
- ".html"
target="mainFrame" title="">文本相似度比较 -
- ".html"
target="mainFrame" title="">关键词提取 -
- ".html"
target="mainFrame" title="">文本摘要提取 -
-
-
- "#"
class="inactive">图像识别组件 -
-
- ".html"
target="mainFrame" title="">照片背景替换 -
- ".html"
target="mainFrame" title="">识别目标 -
- ".html"
target="mainFrame" title="">猫狗识别 -
-
-
实现完成后,大体上运行结果如下,至于上面的logobar和statusbar有待慢慢完善。
为什么选知识图谱呢,这是长期以来一直惦记的事情,元数据管理、主数据管理、数据治理、数据应用都离不开知识图谱,前期用过neo4j,比较适合做关系存储,一个是闭源,一个是和web集成展现上比较弱;用过networkxx,python用于知识图谱开发的模块,但展现效果上比较弱;想用sigma.js,但文档太少,d3.js门槛太高;pyecharts之前也用过,交互性比较弱,echarts应用比较广一些,文档和案例也比较容易。知识图谱的一个问题是大量数据的呈现效果不是很理想,再则一般人很少这么用,通常是找到一个基准,去遍历其上下游直接或间接节点形成子树;还有个问题关于数据血缘关系的解析,目前python提供的比较成熟的包比较有限,pyparsing勉强可以一用。也需要一点点的把知识串起来。
个人体会,权当一乐,希望有一天能用上自己的成果。