1. 安装itchat
pip install itchat
python扩展包的安装太简单了,就只需要一行命令就可以解决
2. 利用itchat获取群聊好友的信息
直接上代码,代码里面会有相关的注释的
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Date : -08-22 17:30:40# @Author : WangGuo# @GitHub : /King-Key# @Blog : /King_key# @Website: https://king-key.github.io# @Email : guo_wang_113@import osimport sysimport xlsxwriterimport itchat,timefrom 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()
3. 中间出现的问题
有的微信号无法登录群聊显示不全好像说是新申请的无法登录,可以试试能否登录网页版微信,能登录网页版微信就可以登录itchat,反之一样
这里的群聊默认是只显示已经保存在通讯录里面的群聊
首发文章链接:https://king-key.github.io//08/23/itchat-1/#more