概述
一.安装itchat
**pip3 install
模块名**- 通过pycharm安装模块
二.使用itchat对微信手机助手发送消息
import itchat
import time
import random
itchat.auto_login(hotReload=True)
#itchat.auto_login()自动登陆命令
# #hotReload为热加载即是否缓存
while True:
#给手机助手发送消息
itchat.send('hello',toUserName="filehelper")
#发送命令为hello 发送人为'filehelper'
itchat.send_file('etc/passwd',toUserName="filehelper")
time.sleep(random.randint(1,3))
##延时发送
手机接收如下:
三.使用itchat统计你的微信好友
import itchat
itchat.auto_login(hotReload=True)
#itchat.auto_login()自动登陆命令
# #hotReload为热加载即是否缓存
# 统计你的好友的男女比例
# friends是一个类似列表的数据类型, 其中第一个是自己的信息, 除了第一个之外是你的好友信息.
friends = itchat.get_friends()
info = {}
# 'male':1, 'female':, 'other':
#存储信息
for friend in friends[1:]:
#获取好友信息
if friend['Sex'] == 1:
#判断好友性别,1为男性,2为女性,0为其他。
info['male'] = info.get('male', 0) + 1
elif friend['Sex'] == 2:
info['female'] = info.get('female', 0) + 1
else:
info['other'] = info.get('other', 0) + 1
print(info)
四.获取微信群聊信息
群聊的获取方法为get_chatrooms,将会返回完整的群聊列表。
其中每个群聊为一个字典
传入update键为True将可以更新群聊列表并返回通讯录中保存的群聊列表
import itchat
itchat.auto_login(hotReload=True)
#itchat.auto_login()自动登陆命令
# #hotReload为热加载即是否缓存
chatrooms = itchat.get_chatrooms(update=True)
for i in chatrooms:
print(i['NickName'])
五.指定群组发送消息
import itchat
itchat.auto_login(hotReload=True)
def SendChatRoomsMsg(gname, context):
# 获取群组所有的相关信息(注意最好群聊保存到通讯录)
myroom = itchat.get_chatrooms(update=True)
# myroom = itchat.get_chatrooms()
#定义全局变量(也可以不定义)
global username
# 传入指定群名进行搜索,之所以搜索,是因为群员的名称信息也在里面
myroom = itchat.search_chatrooms(name=gname)
for room in myroom:
# print(room)
#遍历所有NickName为键值的信息进行匹配群名
if room['NickName'] == gname:
username = room['UserName']
# 得到群名的唯一标识,进行信息发送
itchat.send_msg(context, username)
else:
print('No groups found')
SendChatRoomsMsg('XXXXX','test')
运行结果:
六.建立微信聊天机器人
import itchat
import requests
def get_tuling_response(_info):
print(_info)
#图灵机器人网址
## 构造了要发送给服务器的数据
api_url = "http://www.tuling123.com/openapi/api"
data = {
'key' : '824073e601264a22ba160d11988458e0',
'info' : _info,
'userid' : 'villa'
}
##其中userId是用户的标志
##Key来告诉图灵服务器你有权和他对话
##info接收的信息
res = requests.post(api_url,data).json()
# 字典的get方法在字典没有'text'值的时候会返回None而不会抛出异常
print(res['text'])
return res['text']
#时刻监控好友发送的文本消息,并且给予一回复
# isGroupChat=True接收群聊消息中的文本信息, 并让图灵机器人自动回复;
# isMapChat=True接收群聊消息中的文本信息, 并让图灵机器人自动回复;
@itchat.msg_register(itchat.content.TEXT)
def text_reply(msg):
#获取好友发送消息的内容
content = msg['Content']
#将好友的消息发送给机器人处理,处理结果就是返回给好友的消息
returnContent = get_tuling_response(content)
return returnContent
# if __name__ == "__main__":
itchat.auto_login(hotReload=True)
itchat.run()
最后
以上就是默默乌龟为你收集整理的Python中使用itchat的相关操作的全部内容,希望文章能够帮你解决Python中使用itchat的相关操作所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复