此小项目参考《微信好友数据分析 》——余本国
一、功能介绍:
三、运行环境及相关库的安装
Python -m pip install --upgrade pip
四、如何运行?(初次运行可以使用spyder的IPython console进行交互式输入)
以上库安装好了以后就可进行以下步骤coding
1.登录——获取用户信息:
打开spyder的IPython console 进行交互式编写
In [3]: from wxpy import * #导入模块 In [4]: bot=Bot(cache_path=True)#初始化机器人,选择缓存模式(扫码)登录 Getting uuid of QR code. Downloading QR code. Please scan the QR code to log in. Please press confirm on your phone. Loading the contact, this may take a little while. Login successfully as 舒心陈 In [5]: friend_all=bot.friends() In [6]: print(friend_all[0].raw)#friend_all[0]是你的微信昵称,.raw则是获取你的全部信息 {‘UserName‘: ‘@616bbbd522bbfce0dcad9082de7100b2548b9d8c54f466933fe26ce46f4eb80c‘, ‘City‘: ‘‘, ‘DisplayName‘: ‘‘, ‘PYQuanPin‘: ‘‘, ‘RemarkPYInitial‘: ‘‘, ‘Province‘: ‘‘, ‘KeyWord‘: ‘‘, ‘RemarkName‘: ‘‘, ‘PYInitial‘: ‘‘, ‘EncryChatRoomId‘: ‘‘, ‘Alias‘: ‘‘, ‘Signature‘: ‘好开心啊~‘, ‘NickName‘: ‘舒心陈‘, ‘RemarkPYQuanPin‘: ‘‘, ‘HeadImgUrl‘: ‘/cgi-bin/mmwebwx-bin/webwxgeticon?seq=879163398&username=@616bbbd522bbfce0dcad9082de7100b2548b9d8c54f466933fe26ce46f4eb80c&skey=@crypt_6e5fb2f2_41b8311b5e5bb5ea58c12688ff48ccf9‘, ‘UniFriend‘: 0, ‘Sex‘: 1, ‘AppAccountFlag‘: 0, ‘VerifyFlag‘: 0, ‘ChatRoomId‘: 0, ‘HideInputBarFlag‘: 0, ‘AttrStatus‘: 0, ‘SnsFlag‘: 1, ‘MemberCount‘: 0, ‘OwnerUin‘: 0, ‘ContactFlag‘: 0, ‘Uin‘: 3129189532, ‘StarFriend‘: 0, ‘Statues‘: 0, ‘MemberList‘: [], ‘WebWxPluginSwitch‘: 0, ‘HeadImgFlag‘: 1}
2、统计用户信息
In [7]: len(friend_all) #统计查阅了多少好友 Out[7]: 173
In[7]:lis=[] In[8]:for a_friend in friend_all: NickName=a_friend.raw.get(‘NickName‘,None) #Sex=a_friend.raw.get(‘Sex‘,None) Sex={1:"男",2:"女",0:"其他"}.get(a_friend.raw.get(‘Sex‘,None),None) City=a_friend.raw.get(‘City‘,None) Province=a_friend.raw.get(‘Province‘,None) Signature=a_friend.raw.get(‘Signature‘,None) HeadImgUrl=a_friend.raw.get(‘HeadImgUrl‘,None) HeadImgFlag=a_friend.raw.get(‘HeadImgFlag‘,None) list_0=[NickName,Sex,City,Province,Signature,HeadImgUrl,HeadImgFlag] lis.append(list_0)
def lis2e19(filename,lis): ‘‘‘ 将列表写入 07 版 excel 中,其中列表中的元素是列表. filename:保存的文件名(含路径) lis:元素为列表的列表,如下: lis = [["名称", "价格", "出版社", "语言"], ["暗时间", "32.4", "人民邮电出版社", "中文"], ["拆掉思维里的墙", "26.7", "机械工业出版社", "中文"]] ‘‘‘ import openpyxl wb = openpyxl.Workbook() sheet = wb.active sheet.title = ‘list2excel19‘ file_name = filename for i in range(0, len(lis)): for j in range(0, len(lis[i])): sheet.cell(row=i+1, column=j+1, value=str(lis[i][j])) wb.save(file_name) print("写入数据成功!") lis2e19(r‘C:\Users\Benny\Desktop\Python\Python练习\wechat_02.xlsx‘,lis)
lis2e19(r‘C:\Users\Benny\Desktop\Python\Python练习\wechat_02.xlsx‘,lis)
打开文件(部分截图):
对数据进行初略的认知分析。
#对数据进行初步探索 #方法一 #粗略获取好友的统计信息 data = friend_all.stats_text(total=True, sex=True,top_provinces=10, top_cities=100) from pandas import read_excel df=read_excel(r‘C:\Users\Benny\Desktop\Python\Python练习\wechat_02.xlsx‘,sheetname=‘list2excel19‘)
print(data)
部分数据截图如下:
五、功能模块代码
微信小项目——统计好友人数,省市分布,排序并统计好友签名特点,用pyechat显示图像并存为HTML文件
原文:https://www.cnblogs.com/shuxincheng/p/10968362.html