python itchat给指定联系人发消息的方法

yipeiwu_com7年前Python基础

itchat模块

官方参考文档:https://itchat.readthedocs.io/zh/latest/

安装

pip install itchat / pip3 install itchat

原理

Python模仿网页版微信登陆,并且现有一套操作网页版微信的API,可以将你使用微信中产生的数据爬下来,并做出相应的处理。

操作

1.导入这套微信API的包itchat

import itchat

2.模仿网页版微信登陆

itchat.auto_login()

3.使用相关函数找到相关微信联系人信息(这里返回的是一个JOSN数组)

users=itchat.search_friends("飞叔Brother")

4.得到相关联系人的用户名(具体想看JOSN内部都是什么数据可以自己打印出来看看)

userName= users[0]['UserName']

5.发送信息到相关联系人

itchat.send('你好飞叔Brother',toUserName=userName)

至此,就会发送成功了。

import itchat
itchat.auto_login()
itchat.send('Hello, filehelper', toUserName='filehelper')

这段代码意思是给filehelper发送一个hello,filehelper就是文件助手。

那么我们想给指定的人发消息,并不是把filehelper改掉这么简单

users=itchat.search_friends("老王")
userName= users[0]['UserName']
print(userName)
itchat.send('你好老王',toUserName=userName)

如果我们想给老王发消息,就先使用itchat.search方法,会把所有备注名为老王的联系人全都找出来。

之后我们选取第一个(如果你的联系人列表里只有一个老王,那么就只会搜出来一个)

users[0]取到的是一个联系人对象,他里面有个key叫UserName,它就是真正的用户的username

之后我们再使用itchat.send方法,就可以成功向老王发送消息了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python中处理列表之reverse()方法的使用教程

 reverse()方法代替逆转列表对象。 语法 以下是reverse()方法的语法: list.reverse() 参数    ...

Python在Console下显示文本进度条的方法

进度条实现原理 进度条和一般的print区别在哪里呢? 答案就是print会输出一个\n,也就是换行符,这样光标移动到了下一行行首,接着输出,之前已经通过stdout输出的东西依旧保留,...

python3实现全角和半角字符转换的方法示例

前言 本文主要给大家介绍了关于python3中全角和半角字符转换的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 一、背景介绍 解决什么问题:快速方便的对文...

TensorFlow dataset.shuffle、batch、repeat的使用详解

直接看代码例子,有详细注释!! import tensorflow as tf import numpy as np d = np.arange(0,60).reshape([6...

使用python实现tcp自动重连

操作系统: CentOS 6.9_x64 python语言版本: 2.7.13 问题描述 现有一个tcp客户端程序,需定期从服务器取数据,但由于种种原因(网络不稳定等)需要自动重连。 测...