nodejs sqlite数据库之QQ拼音表情包

nodejs sqlite数据库之QQ拼音表情包

月光魔力鸭

2020-07-19 17:40 阅读 769 喜欢 0 QQ拼音表情包

平时聊天或写文章的时候,一直使用QQ拼音,经常会在打字的时候蹦出表情来,昨天突然就想把这沙雕表情插入到我的文章里面.. 还可以稍显生动一些..无

然后找到了QQ拼音存在电脑本地的数据库,image.***.db 文件,很明显为sqlite数据库,并且无加密或密码,可以直接打开。

就看到了几百个表情包地址..关键是下载无鉴权,很容易就可以下载下来..但是考虑到有500+之多..自然还是程序来做。

由于之前未使用过sqlite3数据库,这里做个小尝试..发现连接使用并不难..

资料查阅

代码

代码很简短,几十行就OK了,下载后可以通过RAR进行解压..目前暂时没想好如何插入到文章中,等后续考虑好了方式,再更新。

/***
 * 读取sqlite数据库,并下载所有的表情,并解压。
 */
var sqlite3 = require('sqlite3').verbose();
var db = new sqlite3.Database('db/image.db');
var axios = require('axios');
var fs = require('fs');

;(async function(){
    db.serialize(async ()=>{
        db.all("select * from downloadpacket",async (err,row)=>{
            console.log(row.length);
            await download(row);
      })
    })
})();

//下载表情包,并进行解压。
async function download(rows){
    for(let i in rows){
        let d = rows[i];
        let {expName,expDownloadUrl}  = d;
        //下载
        await fetch(expDownloadUrl,expName)
    }
}
async function fetch(url,name){
    let rs = await axios({
        url : url,
        type : 'get',
        responseType : 'stream'
    }).then(rs=>rs.data);
    var ws = fs.createWriteStream('./emoj/'+name+'.qqe');
    await r2w(rs,ws);
}

function r2w(rs,ws){
    return new Promise((resolve,reject)=>{
        rs.pipe(ws);
        rs.on('end',()=>{
            resolve();
        })
        rs.on('error',()=>{
            reject();

        })
    });
}

500+表情包

转载请注明出处: https://chrunlee.cn/article/node-sqlite-qq-emoj.html


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
业务需求需要一个微信的文章,但是这个文章又不想让所有人知道,只想让参与活动的人看到,那么怎么在不发布微信公众号文章的前提下,拿到文章的永久地址呢?
构建tomcat镜像后发现项目中参数名字为乱码。
最近在找一些资源,绘本啊 故事啊之类的,想到肯定有很多人分享到了网盘,但是去哪里找呢?
对于视频,音频等的处理,使用ffmpeg还是很方便的,但是由于命令繁多,又不好记忆,这里整理下个人常用的几个命令,后续方便查找。
各位同学下载软件后,如何操作?如何找到dat文件?如何使用?又有哪些注意事项呢? 这里会为大家一一道来。 微信dat怎么解码?手机内微信的文件越来越多怎么清理呢?哪些dat文件是有用的呢?在线dat转码帮你处理。
最近上传github代码越来越慢了,不晓得哪里问题,今天传了俩小时没成功,决定全部迁移到gitee上。
本来这是一个很小的事,按照邮箱设置来一下就OK了.. 可是我密码忘记了,死活重置不了,没办法,微信扫码吧,然后按照设置来又是不行,找了下度娘才行.. 我就纳闷了,这么大一企业,不能用点心么.. 还有昨天那个互联,愁死!
2021年度支付宝扫码赚赏金活动又又又开始啦...