用Python实现微信接口——给朋友发信息或图片文件等
转载: https://www.cnblogs.com/wangls/p/7057570.html
最近基于个人工作情况,经常需要给业务方提供一些数据,而临近春节需要休假一段时间,所以想到了能否通过python来自动将信息转发到微信上。
1、安装
cmd: pip install itchat
2、登录
itchat.auto_login()
注:itchat.auto_login()这种方法将会通过微信扫描二维码登录,但是这种登录的方式确实短时间的登录,并不会保留登录的状态,也就是下次登录时还是需要扫描二维码,如果加上hotReload==True,那么就会保留登录的状态,至少在后面的几次登录过程中不会再次扫描二维码,该参数生成一个静态文件itchat.pkl用于存储登录状态
itchat.auto_login(hotReload=True)
3、退出登录
主要使用的是回调函数的方法,登录完成后的方法需要赋值在 loginCallback中退出后的方法,需要赋值在 exitCallback中.若不设置 loginCallback的值, 将会自动删除二维码图片并清空命令行显示.
import itchat,time
def lcb():
print("登录完成!")
def ecb():
print("退出成功!")
itchat.auto_login(loginCallback=lcb,exitCallback=ecb) #源码中规定需要用回调函数。
time.sleep(10)
itchat.logout() #强制退出登录
4、发送消息
send()
itchat.send(msg="WANGPC的微信消息!",toUserName="filehelper") #返回值为True或Flase
实例:
或者:
send_msg
send_msg(msg='Text Message', toUserName=None),其中的的msg是要发送的文本,toUserName是发送对象, 可以通过 itchat.get_friends(update=True)[0:][1].UserName来获取朋友ID,如果留空, 将发送给自己,返回值为True或者False
实例代码
send_file
send_file(fileDir, toUserName=None) fileDir是文件路径, 当文件不存在时, 将打印无此文件的提醒,返回值为True或者False
实例代码
send_image
send_image(fileDir, toUserName=None) 参数同上
实例代码
send_video
send_video(fileDir, toUserName=None) 参数同上
实例代码