python编写微信自动抓取文件经历

本文讲述了作者使用Python的itchat库自动抓取微信中的文件,并通过pypiwin32+wps将doc文件转换为pdf的过程。在Windows环境下,遇到的挑战包括itchat下载文件的处理、wps接口的使用以及文件路径问题,最终成功实现了自动化流程。
摘要由CSDN通过智能技术生成

python编写微信自动抓取文件经历

背景

近期疫情肆虐,老师全都线上教学,微信群里多出来一大堆乱七八糟的文件,烦死宝宝了,每次还要看,要是doc还得转换成pdf再放进iPad Pro的PDF Expert中,这期间又要从微信导入pages,把我的iCloud Drive搞得乱七八糟的,快捷指令的制作pdf排版又很有问题,于是决定硬核一回,用python搞定它!

前期

当然是去搜集资料啦,
微信操作:itchat
doc转pdf:pypiwin32+wps(有钱人可以用office,linux的可以自己上网搜)
注意,这个要Windows环境。

pip install itchat
pip install pypiwin32

写代码&坑

itchat的文章挺多,这里不再赘述,但有一点大家都讲得不很清楚(或者我眼瞎没看到),就是itchat如何从微信中下载附件。
首先,收到的消息会被打包成一个非常友好的msg对象,它是一个字典,里面有一堆key,感兴趣的自己dir一下或者上网搜一下。
我们要用到的就是Text和FileName这两个key。

msg['Text']
msg['FileName']

首先去写一个接受消息时运行的函数,函数有且只有一个参数,就是收到的消息,一般命名为msg,def前面记得加上@语句哦(这个叫做修饰器)。当你接受的消息是个附件(文件)时,msg的Text key对应的对象是个函数!是的,是个函数!所以下载文件的语句长这样:

msg['Text']()

但是它会下载到哪里呢?没到哪里,在内存里,它会return回来,作为一个bytes对象。
所以整个的下载代码是这样的:

with open(msg['FileName'],'wb') as file:#记得wb的b!!!
	file.write(msg['Text'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值