昔我往矣

VimScript:退出文件时自动关闭各种缓冲区(Buffer)

2022年04月8日

经过调教的vim,肯定有很多插件,比如nerdtree,python-mode等等,很多插件在使用过程中,都通过新建buffer来展示其提供的内容。出于习惯,使用q退出文件,当时vim上还有许多插件的buffer未退出,需要额外的指令执行退出(qa)。怎么在退出文件时,同时退出其它buffer?本文以vim初学者的,编写了一段vimscript实现该功能。

vim pic

Python连接 MySQL 数据库的超时问题

2022年04月8日

当使用Pytohn的 Flask-SQLAlchemy库操作 MySQL 数据时,出现'MySQL server has gone away' 了,是怎么回事呢?又该怎么办呢?分别从MySQL服务端和Python客户端来排查相关问题。

Time Clock

Python日志:从原理到实践

2020年11月28日

日志
日志是调试程序、记录代码执行过程和排查线上线下问题的重要手段,Python中内置了logging模块,可以很方便的根据需要输出日志。本文将详细的讲解和演示Pythonlogging模块的几个重要组件,并提供一些日志输出的经验和方法。


将m3u8.sqlite格式的文件转码成mp4的过程

2020年11月23日

个人习惯,比较偏爱将某些视频资料下载到线下进行离线播放。

分析m6u8.sqlite的数据内容

这次想看某投资app的视频,于是先利用app自带的下载功能将视频下载到手机上。发现手机上保存的是 m3u8.sqlite 格式,为了方便分析,于是把这些文件全部转到电脑上,文件大小200M,基本确认视频内容就保存在这个文件中。传到电脑上之后,直接开始使用Linux的sqlite3命令进行分析。

flask编写一个简易版的DnsPod

2020年08月29日

DNS是当前互联网最重要的基础设施,一般企业内也会部署自己的私有DNS服务器,在我们公司就是部署BIND9做内部域名解析,用DnsPod做外部域名解析,为了配合Nginx的运维自动化,所以对外封装了DnsPod的api接口,对内自己用flask封装了一套api。目前的过程是使用数据库记录DNS的解析记录,通过模板生成DNS的配置文件,并推送到DNS服务器,然后reload生效,过程比较复杂。