pip install itchat
python扩展包的安装太简单了,就只需要一行命令就可以解决
直接上代码,代码里面会有相关的注释的
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date : 2019-08-22 17:30:40
# @Author : WangGuo
# @GitHub : https://github.com/King-Key
# @Blog : https://blog.csdn.net/King_key
# @Website : https://king-key.github.io
# @Email : guo_wang_113@163.com
import os
import sys
import xlsxwriter
import itchat,time
from itchat.content import TEXT
#其中hotReload=True参数是为了短暂记忆登录状态,避免每登录一次就扫一次二维码
itchat.auto_login(hotReload=True)
#获取群聊信息
roomslist = itchat.get_chatrooms(update=True)
#插入excel
#创建excel表单
workbook=xlsxwriter.Workbook("群聊用户名单.xlsx")
for i in range(0,len(roomslist)-1):
#根据群聊名称在表单中创建工作薄
worksheet=workbook.add_worksheet(roomslist[i]['NickName'])
#添加表头
worksheet.write(0,0,"微信名称")
worksheet.write(0,1,"群备注")
#获取群聊用户列表
myroom=itchat.search_chatrooms(name=roomslist[i]['NickName'])
#获取群聊名称
gsp=itchat.update_chatroom(myroom[0]['UserName'], detailedMember=True)
print("群名:{} \t 人数:{}".format(roomslist[i]['NickName'],len(gsp['MemberList'])))
nickname=[]
displayname=[]
for c in gsp['MemberList']:
nickname.append(c['NickName'])
displayname.append(c['DisplayName'])
#将用户信息写入相应的工作薄中
for x in range(len(gsp['MemberList'])):
worksheet.write(x+1,0,nickname[x])
worksheet.write(x+1,1,displayname[x])
#输出一点提示信息
print("sheet {} finished".format(roomslist[i]['NickName']))
#关闭工作表
workbook.close()
好像说是新申请的无法登录,可以试试能否登录网页版微信,能登录网页版微信就可以登录itchat,反之一样
这里的群聊默认是只显示已经保存在通讯录里面的群聊
首发文章链接:https://king-key.github.io/2019/08/23/itchat-1/#more