一日一技:如何正确修复有异常的JSON?
当我们使用大模型生成JSON,或者爬虫抓取数据时,可能会遇到一些有异常的JSON,例如:括号不闭合1{"profile": {"name": "xx", "age": 20}没有引号1{name: 青南, age: 20, salary: "99999999, }反斜杠异常1{"name": "青南", "age": 20, "salary: "\"very big\\""}Python的json模块解析这些有问题的JSON时就会报错。这个时候,可以使用一个叫做json-repair的第三方库来解决问题。使用pip就可以安装json-repair。导入以后,就可以像json.loads一样使用了,运行效果如下图所示:对于双引号异常和反斜杠异常,也能正常解析:字符串型的Python字典,也能正常解析,如下图..
更多Plane项目管理部署和试用
Foreword 部署试用Plane,在其他几个开源不给力以后,希望都寄托到了Plane身上了 Plane拥有30K的星,对比其他开源确实有一些独到之处,整体设计也很现代化,响应式布局 部署 https://github.com/makeplane/plane 官方有提供一键部署脚本,直接跑就行了 curl -fsSL https://prime.plane.so/install/ | sh - 这个脚本必须试用域名,如果只是本地测试使用,还是用社区版本 社区版 创建文件夹 mkdir plane-selfhost cd plane-selfhost 拉取稳定版 curl -fsSL -o setup.sh https://raw.githubusercontent..
更多部署试用OpenProject
Foreword 部署试用OpenProject,还是发现了一些问题 部署 https://www.openproject.org/docs/installation-and-operations/installation/docker/#all-in-one-container 部署参考官方文档,但是还是有问题 docker run -it -p 8080:80 \ -e OPENPROJECT_SECRET_KEY_BASE=secret \ -e OPENPROJECT_HOST__NAME=localhost:8080 \ -e OPENPROJECT_HTTPS=false \ -e OPENPROJECT_DEFAULT__LANGUAGE=en \ op..
更多部署试用Orangescrum
Foreword 部署试用Orangescrum,还是发现了一些问题 部署 https://hub.docker.com/r/orangescrum/orangescrum-app docker在github中没有给对应的文档或者安装说明,在dockerhub中倒是有官方镜像,但是镜像已经非常老了,体验了一下跟云端版本相差甚远 docker run -d -p 3306:3306 --name=osdb orangescrum/orangescrum-db docker run -d -p 80:80 --name=osapp --link=osdb orangescrum/orangescrum-app 部署老版本倒是不困难,两条命令启动完就能进去了 但是这个老版本任务不支持..
更多使用 VisualVM 监控应用 GC
我们知道,使用 VisualVM 可以监控 Java 应用的各种运行时信息,包括资源占用、正在运行的线程等等。本文将简单介绍如何使用 VisualVM 的插件 Visual GC 来监控 Java 应用的垃圾回收情况。 安装 Visual GC 插件因为 Visual GC 插件并不是随 VisualVM 附带的,需要到插件商店下载。 点击 Tools–>Plugins 打开插件管理窗口,进入 Available Plugins,在左侧窗格中勾选 Visual GC,点击 Install,同意许可协议后,稍等片刻即可完成安装。安装完成之后无需重启 VisualVM。 监控垃圾回收安装完成后,在 VisualVM 的 Applications 窗格中双击要监控的应用,然后在右侧窗格中进入 Vis..
更多从 umami v1 迁移到 v2
昨天收到 Vercel 发的报警邮件,说我自己部署的分析平台 umami 部署失败。检查之后发现是 umami 有个大版本升级,而升级脚本失败导致新版本部署失败了。那既然报错了,就修呗。 虽然不是什么复杂的问题,但还是记录一下好了,也当是水一篇文。 问题的根源一开始发现自动迁移不成功,那么按照官方的迁移文档,我手动运行了迁移脚本,但是得到了这样的错误信息:db error: ERROR: must be owner of table _prisma_migrations。看起来是表的权限问题,_prisma_migrations 这个表的 owner 必须是我用来执行脚本的用户。 搜了一下,PostgreSQL 里面每个表都有一个所有者,而我一开始是用 postgres 这个用户初始化的数据库,所以这..
更多项目管理工具盘点
Foreword 之前已经盘点过一次了,不过那次主要是以文档和工程存储角度来看的,现在是以产品、项目管理角度来看。 目前看多数软件都是从小角度思考,创建项目或者任务都是最细化的那一层,缺少更大视角的规划。一般来说都是自顶向下的,从下往上做规划不太可能啊,那种只能是被动应对层出不穷的问题 理想的项目管理软件应该是这样的,盘点也是尽可能寻找接近的软件 收费 Trello https://trello.com/ 10人内免费 Trello的卡片风,感觉很流畅,但是如果启动的时候选择团队,他会直接推荐JIRA Trello和JIRA都是Atlassian的软件 Trello不支持敏捷项目管理,只支持这种简单的卡片堆砌方式,有点瀑布的意思 整体拖动起来非常流程,如果只是简单..
更多Linux删除了 .ru 帐号?我查了一下
发生了什么事? 日前,Linux 内核主要维护者之一 Greg Kroah-Hartman (Greg K-H) 提交了一项不寻常的“文档”更新,将数名具有 <.ru> 顶级域名邮箱的维护者,和一名明确为俄罗斯身份的维护者从 MAINTAINERS(维护者名录)文件除名。 这一提交已于上周日被 Linus Torvalds 拉取并包含于 6.12-rc4 版本的代码中。 已有来自于 AOSC 的开发者提交了 revert(尚未合并),而 Linus 本人在评论中声明其对先前的 commit 知情并支持 一开始,我以为是 “反向” 厚脸皮PR 一般来说, github 上混一个 contributor 得贡献代码,很多人就改改文档、翻译就拿到一个“贡献者”称号(我也干过哈哈哈)。甚至还有离..
更多项目管理之PingCode
Foreword 试用了一下PingCode,发现还是很多地方很反人类,举例说明,再谈谈我自己对项目和产品管理的理解 PingCode https://pingcode.com/ 先要注意一下,PingCode大致分了两个大板块,一个是产品管理,一个是项目管理。 产品偏重一些用户需求,服务对象是用户和市场,而项目则是服务产品的,但也不全是服务产品,项目规划或者管理的范围可能更大一些,会涉及到超过产品的部分,比如技术本身的发展、预研的部分、一些内部的问题。而且项目本身可能包含的不仅仅是一款产品,可能是多个产品,甚至是整个产品平台。 大公司中会把产品和项目分成两个部门,产品管产品的,项目管项目的,类似PingCode就是这样的模式,大部分做此类的管理的软件都是将二者分开的模式,这没问题,但..
更多ChatGPT 对我过往问题的吐槽
看起来是 “凌晨3点” 写javascript 节拍器 这事很不满啊。哈哈哈 You're on macOS, building metronomes in JavaScript, which is cute. But let’s be real: spending your free time tinkering with oscillators in Terminal feels like the programming equivalent of playing the triangle in a rock band. “Look, everyone! I made a metronome!” 👏 …And now it’s just you and a beep, beep, beep won..
更多