标签 Python 下的文章

问题背景

系统的日志、缓存,或程序的输出、结果等文件写入频率很高,随着时间的推移,磁盘空间的占用慢慢增长,这些超过一定时限的数据,比如 3 个月前的数据,可能没有太大的价值(在此假设重要的事件已经收集并上报),那么在系统空间不足时(如剩余 10% 的可用空间),可删除这些文件,以确保系统和服务的正常运转。

- More -

背景

项目推行国际化,除了代码中变量、字符串常量外,注释也要求全部使用英文,因此需要使用正则表达式将这些注释、文档字符串定位出来,加上上下文信息(如哪个文件哪一行)汇总、统一进行翻译,再替换到原来的位置,当然如果原来注释已经过时,则重新订正。

- More -

背景说明

在尝试从源码安装某个 PyPi 库时,Windows 下报错——提示 UnicodeDecodeError,这个错误在 Linux 测试没有出现过。然而甲方的技术栈,无论是软件,还是机器,都依赖微软系,这就倒逼我们去适配他们的环境。

问题分析

虽然 PyPi 有这个包的 wheel,但是更新没有那么频繁。所以,官方推荐将代码 Clone 下来,再通过 setup.py 来构建并安装。

pip_install_anomalib.webp
图 1: 安装时报错

- More -

问题背景

昨天访问域名提示证书过期,记得之前有配置了 certbot 自动更新,但是查看日志发现是 certbot renew 更新时出错了,报错指出其依赖 python3-certbot-nginx 没有装,这里需要夸下这种可插拔的插件设计。

想装该 plugin 时,依赖 Hell 出现了 —— certbot-nginx 本身又依赖 nginx-core,然而笔者的 Nginx 是自己从源码编译的,发行版中的 nginx-core 要比自编译的旧,很多新特性不支持(如 ssl_reject_handshake)。


想必,这就是不使用官方版本的坏处了:DIY 固然好,能跟上最近的包功能特性,但有一好没两好,周边的官方拓展库可能暂时没有为新版的包做适配,那么新副本开荒的工作就只能自己包揽过来做了。

- More -

背景说明

在开发机器视觉应用时,Python 这一脚本语言很适合作为胶水将其它语言编写的组件粘贴起来,也就是说控制逻辑部分变动比较快的话,使用 JS, Lua 或 Python 来写,除了开发速度快,还有利于跨平台运行;而底层的基础设施 Infra 则采用机器执行效率更高的语言,甚至可以为不同的硬件做汇编指令级别的定制。


本文要解决的问题,包括:

  • 从源码编译并安装 OpenCV 4.x(如 4.4.5)
  • 在 C++ 代码中调用 OpenCV 库,完成简单的图像矩阵化操作
  • 将 C++ 代码编译并链接成 .so 动态链接库
  • 使用 make 工具链,自动化完成构建工作
  • 在 Python 中调用动态连接库

- More -