一、Python接口开发
1. 整理Neo4j数据
目标是从Neo4j图数据库中获取数据,并构建出包含节点间关系的结构化数据,以便前端使用。
第一步:获取节点关系
首先编写Python程序,查询并获取节点之间的关系数据。

图:用于从Neo4j获取节点关系的Python脚本。
这段代码不仅执行了查询,还将结果写入了日志文件,方便调试和追溯。
第二步:处理并优化节点关系
获取原始关系后,需要进一步处理,将数据整理成前端易于使用的格式(如包含ID、名称、类别的JSON结构)。

图:处理Neo4j关系数据的Python脚本。
初始版本的处理逻辑有些粗糙,仅将关系简化为a:222这样的形式。为此,我们对Python程序进行了优化,重新梳理了父节点与子节点的属性。

图:优化后,能结构化输出节点及其子节点属性的代码。
优化后的程序运行效果如下,数据结构清晰,包含了完整的节点信息与层级关系:

图:调用本地API接口返回的格式化Neo4j数据结果。
至此,后端数据接口已准备就绪,下一步是在Vue前端项目中调用此接口,替换掉原有的静态模拟数据。
2. 在Vue中引入Python接口
目标是将开发好的Python数据接口集成到Vue.js前端应用中。
第一步:调用接口
计划通过Axios等HTTP库发起请求,连接到Python后端服务(如localhost:5001),获取实时数据。但在进行前端集成前,先将已完成的后端代码部署到服务器环境。
3. 部署Python后端代码
将本地开发完成的代码部署到服务器,通常会遇到一些环境配置问题。
第一步:上传代码
原计划使用Git进行代码同步,但由于权限问题未能成功,因此改为直接上传文件到服务器。
第二步:解决运行环境问题
在服务器上尝试长时间运行Python脚本时,遇到了编码错误:
SyntaxError: Non-ASCII character '\xe9' in file server.py on line 7, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
该错误是由于Python文件包含中文等非ASCII字符,但未在文件开头声明编码格式所致。

图:Python编码声明错误的常见原因与解决方法。
解决方法是在Python文件顶部添加编码声明,如 # -*- coding: utf-8 -*-。此外,还遇到了因Python版本过旧导致的问题,通过将命令从python/pip切换为python3/pip3得以解决。
第三步:导入Neo4j初始数据
将准备好的9部分数据依次导入到服务器的Neo4j数据库中。采用逐个文件导入的“笨办法”,整个过程也只花费了几分钟,证明了简单直接的方法在某些场景下同样高效。
二、生活随记
拍摄于2024-03-20 15:30,带孩子去社区广场玩耍时拍摄。
在陪伴孩子成长的过程中,我对事业与家庭的平衡有了新的认识。曾经认为父母与孩子是独立的个体,不应因孩子而过多影响个人事业。但随着时间推移,我意识到,孩子的身心健康是无价的。投入时间关爱他们,确保他们快乐成长,与追求事业成功同样重要,甚至更为根本。这份责任激励着我既要努力工作,也要用心陪伴。

图:记录家庭时光。