基于网页版微信实现的微信SDK(Kotlin版)

跟朋友合作开发一个小项目,需要实现一个微信个人号机器人。他的首选语言是Java,基于一个码农的懒惰,我就选择了Kotlin作为我的开发语言(我们各自负责不同模块)。本身我对实现一个微信个人号SDK也是蛮有兴趣的,就没有使用第三方的轮子,着手使用Kotlin重新实现了一个网页版微信的SDK。 网页版微信消息处理流程 首先是分析微信网页版的消息处理流程: 获取UUID 下载二维码,等待扫码 获取登录认证信息 初始化微信应用 同步消息和获取对话列表 发送消息 二维码扫描问题 因为程序要放到服务器环境上面运行,而服务器上面并没有图形界面。二维码的处理就较为繁琐,为此参考kdepp/tty_qr.py »

Golang开发实践:把数据库数据保存到map[string]interface{}中

根据某个奇葩需求这段时间要做一个筛选数据库数据的工具,要求逐条从数据库读取数据。然后根据某几个字段筛选保存数据。这样一来某些不需要作为筛选依据的字段也要读取。 Golang读取数据库很简单,可以使用ORM也可以直接使用SQL语句。然而要处理的数据库表有几十个字段,光是定义一个四十多个字段的数据模型就让人感觉痛苦,况且并不是所有字段都要参与运算。于是就决定使用SQL语句来处理。保存到map[string]interface{},这样也方便实现导出字段可配置的需求。 保存到map[string]interface{} 看了一下Golang标准库database/sql中Rows的API文档,并没有提供获取所有字段的API接口,文档提供的实例代码调用了Scan函数并传入相关指针获取数据. rows, err := db.Query("SELECT »

Golang实现的Web服务扫描工具

扫描HTTP服务器Server及默认页面title. 使用go语言开发. [TOC] 安装 在开始这一切之前,我们假设你已经有了golang的编译环境。如果没有,请根据实际情况选择安装还是绕道:doge: 克隆项目到本地 在项目目录中执行go build 命令 $ cd $GOPATH/src $ git clone gitee.com/irealing/banner.git $ cd banner $ go »

Python之动态加载

在开发中经常总会生产环境与开发环境系统参数不同的问题,为此很多时候都要使用ini、json、xml等配置文件。这是很多情况下的常用做法。然而作为一名有情怀的挖坑工人和Python使用者,怎么能甘心用这种办法 : ). 之前见过某个Python攻城狮在本地创建一个config_local.py文件,然后在config.py模块使用如下代码覆盖其中的配置: from os import path if path.exists(BASE_PATH,'config_local.py'): from config_ »