wechat微信dat文件通过nodejs恢复为图片

wechat微信dat文件通过nodejs恢复为图片

点点

2021-04-16 09:51 阅读 502 喜欢 2

第二次更新:中间发现一些图片总是失败,考虑到应该是图片的格式问题,最后兼容了下jpg gif png 这三个格式,基本上能把所有的图片全部转化成功了。(代码已更新)

声明: 先提供一个在线的版本,可以直接批量上传微信dat文件,然后转化成图片,支持批量下载功能。代码可以保证绝不保留任何文件.. 最主要的是,服务器才40G硬盘,带宽1M, 请各位放心使用,不相信的可以去看下源码即可,是开源的站。

微信dat在线解码,就在顶部demo里可以找到。

http://www.sdxlp.cn/tool/wechatdat 直接带你找初恋欧。。。。。。 嘿嘿

在知乎上看到过,基本上都是一致的,这里提供一个nodejs版本的针对微信内dat文件进行处理恢复为图片的方法。

可以指定某文件夹,然后将图片恢复到另外一个文件夹。

微信的dat文件存在于 wechat files/xxx/filestorage/image/2019-06/ 类似的文件夹内。

需要安装的模块

async 异步处理

代码

//修改图片 //修改图片 let fs = require('fs'); let path = require('path'); let async = require('async');

//值是多少自己算。 let base = 0xFF; let next = 0xD8; let gifA = 0x47; let gifB = 0x49; let pngA = 0x89; let pngB = 0x50;

let scanDir = 'd:/ttt/load/'; let imgDir = 'd:/ttt/load1/';

let files = fs.readdirSync(scanDir); var arr = []; files.forEach(function(item){ if(path.extname(item) == '.dat'){ arr.push(item); } }) async.mapLimit(arr,50,function(item,cb){ convert(item,cb); },function(){ process.exit(0); }) //convert function convert(item,cb){ let absPath =path.join(scanDir,item); let imgPath = path.join(imgDir,item+'.jpg'); fs.readFile(absPath,(err,content)=>{ if(err){ console.log(err); cb(err); } let firstV = content[0], nextV = content[1], jT = firstV ^ base, jB = nextV ^ next, gT = firstV ^ gifA, gB = nextV ^ gifB, pT = firstV ^ pngA, pB = nextV ^ pngB; var v = firstV ^ base; if(jT == jB){ v = jT; }else if(gT == gB){ v = gT; }else if(pT == pB){ v = pT; }

    let bb = content.map(br=>{
        return br ^ v
    })
    fs.writeFileSync(imgPath,bb)
    cb(null);
})

} 代码可以直接拿去用。 通过nodejs 来将微信wechat的缓存的dat图片进行还原,这种情况也可以实现恢复微信中已经撤回的图片。

转载请注明出处: http://sdxlp.cn/article/dat文件wechat.html


如果对你有用的话,请赏给作者一个馒头吧 ...或帮点下页面底部的广告,感谢!!

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
我们很多小伙伴们经常使用的手机微信,对手机微信里面的内容和功能了解的都是非常到位的。比如我们想要在手机里查看微信里面的聊天记录,分分钟就可以将其翻出来,但是电脑版微信的操作步骤和手机微信就不相同了,如果我们想在电脑微信上查看聊天记录应该怎么操作呢?
小米手机很早已推出了门禁卡功能,目前后知后觉的华为手机也在内测版的“钱包”应用内,增加了“门钥匙”功能。使用该功能结合手机NFC,可以将华为手机秒变门钥匙,轻松开门禁。免去忘记带门禁卡,在小区门口漫长等待的烦恼。
苹果12怎么打开5G?IPhone12系列全部支持5G网络,那我们在使用苹果12手机时,该怎么打开5G网络呢,苹果12怎么打开5G,IPhone125G怎么打开,下面就和点点一起来看看吧!
我对canvas中rotate其实是一脸蒙逼的... 虽然之前有做过图片旋转,但那是在他人的基础上直接修改的,至于为啥会这样..讲真,还真没注意过,但是今天又需要用到这块了,实在搞不定了,找了各种资料,终于明白了.. 坐标系的问题。
小伙伴们在玩游戏还是追剧的时候,碰见精彩的画面总是想着要保存下来,录屏是一个极好的方法,一个【Win+G】组合键就完全可以记录美好时刻,那这个组合键到底有什么妙用呢?今天,小编就给小伙伴们详细介绍一下,截图录屏一个都不能少。
选择对于大部分抖音玩家来说,圈粉是一件非常令人头疼的事情。很多人说,新号越来越难做,增长也越来越困难了。那么我们要如何去圈粉呢?在操作的时候有需要注意一些什么呢?
断点下载这种操作比较常见,用来做demo,简单搭建一个,一时去找也还找不到,想着也不麻烦,先做个demo试试。
微信是我们常用的社交软件,聊天时候免不了不想打字而去发送语音,或者现在很多网课都是通过微信发给小伙伴们,都知道微信里面的语音是无法转发的,而且微信的android版的语音文件采用amr格式,而iPhone版采用aud格式,这两种格式连播放器都无法播放!那么当小伙伴们需要永久保存和某个人的语音聊天记录到电脑或手机上时,应该怎么办呢?