用Python获取了微信好友数据,进行可视化分析发现~

【分享】获取微信通讯录python代码形式实现 微信号”, “昵称”, “地区”, “备注”, “标签”, “签名”, “来源”5. 找到最后一个空格所在的位置(后一个就是真正的联系人了)当前微信号与上一个相同的时候,说明到底部了,可以跳出循环。3. 滚动鼠标到最顶部(防止已经滚动了一部分了)7.记录下上一个联系人的微信号。7. 无限循环按键盘下箭头。获取详情中的以下元素内容。6. 点击第一个联系人。4. 获取联系人列表。 阅读详情

大家好!

因为无事可做,就想着看看爬取一下微信好友,然后理智的分析一波~~

01 数据采集

我们这次使用的是Itchat库来获取的微信好友数据。

01 登陆

用Itchat库来获取微信好友数据,首先需要先进行登陆。代码如下:

itchat.auto_login(hotReload=True)

其中hotReload=True的作用是,在短时间内获取数据不需要重复进行登陆验证。

02 获取好友数据

Itchat库的get_friends()功能可以获取所有好友的数据。但是它获取的数据类型是一种Itchat类型,因为没我们要用正则来提取数据,所以要将数据转化成字符串类型,代码如下:

all_friends = str(itchat.get_friends())

此时,我们就可以开始对数据进行提取了,这里我们提取的是好友个性签名、好友性别、好友所在省份和地市,这四个数据来进行可视化展示。代码如下:

#签名
Signature = re.findall("'Signature': '([\u4e00-\u9fa5].*?)',",all_friends)
c = 0
for i in Signature:
   with open(r'签名.txt','a') as f:
       try:
           f.write(i)
       except:
           pass
#统计性别数量
Sex = re.findall("'Sex': (.*?),",all_friends)
man = woman = other = 0
for i in Sex:
   if i == '1':
       man+=1
   elif i == '2':
       woman+=1
   else:
       other+=1
#省份和城市数据
shengfens = re.findall(r"'Province': '(.*?)',",all_friends)
chengshis = re.findall(r"'City': '(.*?)',",all_friends)
#绘制朋友省份分布地图
shengfen = []
for i in range(len(shengfens)):

   if shengfens[i] == '':
       pass
   else:
       shengfen.append(shengfens[i])
# 绘制河南省内朋友分布图
chengshi = []
for i in range(len(chengshis)):
   if shengfens[i] == '河南':
       chengshi.append(chengshis[i])

02 可视化展示

我们一共获取了973个好友的数据,下面对这些数据,来进行数据可视化展示。

01 签名词云可视化

通过对所有好友的个性签名进行词云可视化,我们发现,努力、生活、时间、世界、没有这几个词语最多,看来我的好友大多倾向于跟这些词汇相关的事情。

图片

代码如下:

with open("签名.txt",) as f:
   job_title_1 = f.read()
job_title_2 = re.sub('span','',job_title_1)
job_title_3 = re.sub('class','',job_title_2)
job_title_4 = re.sub('emoji','',job_title_3)
job_title_5 = re.sub('自己','',job_title_4)
job_title_6 = re.sub('回复','',job_title_5)
# job_title_7 = re.sub('位于','',job_title_6)
contents_cut_job_title = jieba.cut(job_title_6)
contents_list_job_title = " ".join(contents_cut_job_title)
wc = WordCloud(stopwords=STOPWORDS.add("一个"), collocations=False,
              background_color="white",
              font_path=r"K:\苏新诗柳楷简.ttf",
              width=400, height=300, random_state=42,
              mask=imread('xin.jpg', pilmode="RGB")
              )
wc.generate(contents_list_job_title)
wc.to_file("推荐语.png")

02 性别数量图

通过对好友性别进行可视化,我们发现,我们有男性好友543人,女性好友318人,还有112人没有填写这项信息。

图片

03

 省份分布图

我们通过对这973个好友所在省份进行可视化展示发现,我们的好友最多集中在河南,有263位,其次是广东,有69位。河南的好友最多,很可能是因为志斌是河南人的缘故。

图片

代码如下:

province_distribution = dict(Counter(shengfen).most_common())
provice = list(province_distribution.keys())
values = list(province_distribution.values())
map = Map("中国地图",width=1200, height=600)
map.add("", provice, values, visual_range=[0, 200], maptype='china', is_visualmap=True,
visual_text_color='#000',is_label_show=True)
map.render(path="地图.html")

04 河南省内好友分布

通过上面我们分析发现,我们河南的好友最多,那么我接着对自己河南省内好友的地市分布进行了可视化展示。

从展示图中我们发现,好友最多集中在郑州,有116位,其次是鹤壁,有38位,我家是鹤壁的,在郑州上学,郑州的好友比鹤壁的多,估计是上大学才有手机的缘故导致的。

图片

代码如下:

city = []
values = []
for k,v in dict(Counter(chengshi).most_common()).items():
    city.append(k+'市')
    values.append(v)
map2 = Map("河南地图",'河南', width=1200, height=600)
map2.add('河南', city, values, visual_range=[1, 25], maptype='河南', is_visualmap=True, visual_text_color='#000')
map2.render(path="河南地图.html")
python clicknium 微信发送消息以及获取好友列表 微信自动化,自动发送消息,获取微信好友列表 阅读详情

相关推荐

用Python获取了微信好友数据,进行可视化分析发现~_python获取微信好友列表

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。通过对所有好友的个性签名进行词云可视化,我们发现,努力、生活、时间、世界、没有这几个词语最多,看来我的好友大多倾向于跟这些词汇相关的事情。此时,我们就可以开始对数据进行提取了,这里我们提取的是好友个性签名、好友性别、好友所在省份和地市,这四个数据来进行可视化展示。我们一共获取了973个好友的数据,下面对这些数据,来进行数据可视化展示。

2401_84139697的博客 922

导出微信好友,批量加好友、导出微信群员信息

下面的代码都测试过了,基于千寻框架。

无心 3138

pywinauto爬取微信通讯录 2023年1月有效

将微信窗口固定到这个位置,即通讯录第一个人的显示。3.运行一段时间后观察data.txt。2.运行如下代码并将鼠标焦点到微信窗口。使用pywinauto爬取微信通讯录。

anananajiushiwo的博客 2610

【写一个Python微信机器人】第九篇: 导出自己的微信好友列表

定时导出自己的微信好友列表,就不用担心有时候误删掉一些好友的微信了。因为导出来的信息里有微信号,可以通过微信号加回来。如果对方没有删除你的话,你删除他之后的短期内加他是不需要再验证的。实现效果如下(需要csv表格的可以自己写个脚本处理):因为基本没有人对原理和代码感兴趣,后面的文章不再讲解原理和代码,有兴趣的可以自己看代码,遇到不懂的可以群里问我。温馨提示:仅接受技术交流,如果你单纯是不会用或者不会Python还是别问我了,我不会回答这类问题。群里问的话,说不定就有好心人回答你。

Trb201012的博客 1262

基于python实现微信好友数据分析(简单)

一、功能介绍 本文主要介绍利用网页端微信获取数据,实现个人微信好友数据的获取,并进行一些简单的数据分析,功能包括: 1.爬取好友列表,显示好友昵称、性别和地域和签名, 文件保存为 xlsx 格式 2.统计好友的地域分布,并且做成词云和可视化展示在地图上 二、依赖库 1、Pyecharts:一个用于生成echarts图表的类库,echarts是百度开源的一个数据可视化库,用echarts生成的图可视化效果非常棒,使用pyechart库可以在python中生成echarts数据图。 2、Itchat:一个开源的微信个人号接口,使用python调用微信从未如此简单。 3、Jieba:简单的分词操作库

32位ALU设计(verilog实现)

32位ALU设计 ​ 算术逻辑单元(arithmetic and logic unit) 是能实现多组算术运算和逻辑运算的组合逻辑电路,简称ALU。算术逻辑单元是中央处理器(CPU)的执行单元,是所有中央处理器的核心组成部分,由"And Gate"(与门) 和"Or Gate"(或门)构成的算术逻辑单元,主要功能是进行二位元的算术运算,如加减乘(不包括整数除法)。基本上,在所有现代CPU体系结构中,二进制都以补码的形式来表示。 设计思路 设计实现 仿真测试 文章目录32位ALU设计一、设计

Destiny的博客 4万+

如何用Python爬取你的微信好友信息

这篇文章主要是分享如何爬取自己的微信好友的公开信息,查看好友的地域分布。一起来看一看,更加了解你的朋友圈吧!

weixin_43931438的博客 4702

Matcap与菲涅尔

菲尼尔效果(简化版公式):fresnel = base + scale*((1-v*n)^power)透明队列为后前渲染,不关闭深度写入则会覆盖之前的像素,导致混合不了。y的值为0~1,根据x3返回对应y值。两色混合做个demo看看!混合为什么要关闭深度写入?

weixin_62773441的博客 372

用Python获取了微信好友数据,进行可视化分析发现

大家好! 因为无事可做,就想着看看爬取一下微信好友,然后理智的分析一波~~编程学习资料点击领取 01 数据采集 我们这次使用的是Itchat库来获取的微信好友数据。 01 登陆 用Itchat库来获取微信好友数据,首先需要先进行登陆。代码如下: itchat.auto_login(hotReload=True) 复制代码 其中hotReload=True的作用是,在短时间内获取数据不需要重复进行登陆验证。 02获取好友数据 Itchat库的get_friends()功能可以获取所有好友.

m0_63171455的博客 1428

Windows10 Qt下用MINGW 编译VTK-8.1.0

1. 材料准备(1) 下载VTK-8.1.0: https://www.vtk.org/download/(2) 下载TIFF库: http://gnuwin32.sourceforge.net/packages/tiff.htm(直接安装即可,注意选择路径不包含中文字符)2. 安装: (1) cmake配置: a. Module下配置:勾选下图所示的六项 b. Build 配置:勾选这里能够在b...

hit1524468的专栏 3892

告别手动点鼠标:用Python脚本批量跑ADS版图仿真,效率提升10倍(附完整代码)

本文详细介绍了如何利用Python脚本自动化ADS版图仿真流程,显著提升射频工程师的工作效率。通过调用ADS底层接口,实现参数化修改、批量任务调度和结果自动收集,解决了手动操作中的常见问题,如仿真不更新等。附完整代码,帮助开发者快速实现10倍效率提升。

weixin_42523543的博客 331

python+appium爬取微信运动数据,并分析好友的日常步数情况

python+appium+mobile phone爬取微信运动数据,顺便数据分析一波好友们的运动情况 前言 微信运动只能看到前30天的数据,超过的会过期而拿不到,我也是现在才知道的。本来还想拿多一点数据的哈哈。 ...

微信公众号 9715

windows中如何将已安装的nodejs高版本降级为低版本

第一步:先清空本地安装的node.js版本 1.按健win+R弹出窗口,键盘输入cmd,然后敲回车(或者鼠标直接点击电脑左面最左下角的win窗口图标弹出,输入cmd再点击回车键) 然后进入命令控制行窗口,并输入where node查看之前本地安装的node的路径 2.找到上面找到的路径,将node.exe所在的父目录里面的所有东西都删除 3.为了彻底删除之前安装的node.js,鼠标点击电脑左面最左下角的win窗口图标弹出,输入“控制面板”再点击回车键进入,进入控制面板后,找到所安装的node.js并

weixin_44582077的博客 9万+

微信好友特征数据分析及可视化

一、背景及研究现状 在我国互联网的发展过程中,PC互联网已日趋饱和,移动互联网却呈现井喷式发展。数据显示,截止2013年底,中国手机网民超过5亿,占比达81%。伴随着移动终端价格的下降及wifi的广泛铺设,移动网民呈现爆发趋势。 微信已经成为连接线上与线下、虚拟与现实、消费与产业的重要工具,它提高了O2O类营销用户的转化率。过去开发软件,程序员常要考虑不同开发环境的语言、设备的适配性和成本。现在...

紫芝的博客 2234

(LDA新闻文本主题分析)基于 gensim训练LDA模型,进行新闻文本主题分析 完整代码+数据 可直接运行

(LDA新闻文本主题分析)基于 gensim训练LDA模型,进行新闻文本主题分析 完整代码+数据 可直接运行

机器学习深度学习业余选手 1498

PCL 点云圆柱形邻域搜索【2026最新版】

圆柱形邻域搜索是KD-tree算法在点云数据处理中的扩展应用,在一些特定场景应用中具有无与伦比的优势。博客长期更新,本文最近一次更新时间为:2026年5月4日。

点云侠的博客 3451

使用python对微信好友进行数据分析

微信好友分析 基于 Python 对微信好友进行数据分析,这里选择的维度主要有:性别、头像、签名、位置,主要采用图表和词云两种形式来呈现结果,其中,对文本类信息会采用词频分析和情感分析两种方法。在正式开始这篇文章前,简单介绍下本文中使用到的第三方模块: itchat:微信网页版接口封装Python版本,在本文中用以获取微信好友信息。 jieba:结巴分词的 Python 版本,在本文中...

get_py的博客 2217

Python 爬虫实战:美团大众点评餐厅数据爬取与分析

本文摘要:美团/大众点评餐厅数据爬虫实战指南 本文详细介绍了如何开发一个完整的餐厅数据爬虫系统,涵盖从环境配置到数据可视化的全流程。主要内容包括: 项目目标:爬取餐厅基本信息(名称、评分、价格等)及详情数据,支持市场分析和商业决策 技术方案:使用Python生态工具(Requests、Playwright、Pandas等)构建爬虫系统 核心挑战:破解大众点评的字体反爬机制和美团的API签名验证 实现细节:提供完整的代码示例,包括字体解析、签名生成、请求重试等关键功能 数据应用:支持将结果导出为CSV/Exc

u014481728的博客 319

用 Python 基于 pyecharts 对微信好友(性别,地域)进行分析,并数据可视化

代码我是在anaconda的jupyter notebook里编写运行的 需要安装的库 在cmd里安装 pip install wxpy pip nstall pyecharts wxpy 在 itchat 的基础上,通过大量接口优化提升了模块的易用性,并进行丰富的功能扩展。 pyecharts 是一个用于生成 Echarts 图表的类库。Echarts 是百度开源的一个数据可视化 JS 库。...

weixin_44947339的博客 1404

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

小试牛刀——利用python分析微信好友,并实现数据可视化

最近发现了一个非常好玩的python库——itchat,itchat是一个开源的微信个人号接口,可以使用python非常简单的调用微信。详细文档请移步itchat官档。 本文不会详细展开,但是通过本文,你可以学到: 通过itchat获取微信好友的个人相关信息; 对获取到的相关信息进行分析; 将分析结果进行可视化展现。 首先获取微信好友的相关信息 话不多少,上代码 # 获取数据 def get_...

jikedou的博客 2847

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【Python可视化】嗨,你有一份微信好友报告待查收~

全部代码都已上传至我的KLab—????嗨,你有一份微信好友报告待查收~,Fork后可运行生成你自己的微信好友报告~ 本次项目统计展示了如下信息: ????好友地域分布 ????性别统计 ????备注比例 ▶️首字母统计 ????使用最多的emoji ????签名词云 其他可视化报告: ????【武汉加油⛽️】基于Pyecharts的疫情数据可视化~ ????【爬虫&可视化】爬了链家房源信息看看深圳房价多恐怖~ ????【Pyecharts】奥运会数据集

AwesomeTang 2508

Python 获取微信好友地区、性别、签名信息并将结果可视化

序言 我之前在优快云博客上分享过两篇有关itchat库的教程: itchat库实用教程 (一): Python从编程零基础打造一款微信聊天自动回复机器人 itchat库实用教程 (二): Python使用itchat库+图灵机器人实现群聊助手 本篇博客是itchat库系列的第三篇文章,它主要实现的功能是获取微信好友地区、性别、签名信息并将结果可视化 正文 根据itchat库获得好友信息 使用下面...

月小水长 2509

基于Python实现的微信好友数据分析——抓取好友性别、位置、头像签名

有人说,人性远比计算机编程更复杂,因为即使是人类迄今为止最伟大的发明——计算机,在面对人类的自然语言时同样会张惶失措 。

自动化软件测试 5258

深度剖析微信好友数据:从分析到可视化的全流程实践

本项目实现了微信好友数据的多维度分析与可视化,涵盖了从数据保存、交互到复杂分析和界面展示的多个功能。通过模块化的设计,每个功能相对独立,便于维护和扩展。然而,项目也存在一些不足之处。例如,微信数据获取受限制,导致部分功能依赖用户手动导出数据;部分功能的算法可以进一步优化,如人脸识别和特殊好友筛选的准确性等。

m0_73885944的博客 974

数据可视化之用python分析微信好友性别比例

数据可视化之用python分析微信好友性别比例 ​ 技术点:数据分析matplotlib使用,微信接口模块itchat,数据统计 ​ 知识点讲解 微信登录 登录可以免费领取一万元 import itchat # 这个模块对微信公开的接口进行封装,大大方便了我们的使用 # 登录 itchat.login() # 发送一条消息给文件助手 itchat.send('10000元', 'filehe...

qq_42370150的博客 1185

Python获取微信好友地址以及性别并生成可视化图表

使用python批量获取微信好友地址,需要使用itchat库,这个库是用的网页版微信的接口进行数据获取的。所以你想测试这个功能必须要你的微信能够登录网页版微信。(之前的itchat-uos模块使用了统信版的接口绕过了腾讯的检测,所有的微信都能正常使用,但是最近这个接口被腾讯封杀了)如果你的微信是在2017年还是2018年?之前注册的,登录微信文件传输助手网页版之后传输一个文件之后再打开微信网页版就能直接登录了。(最近两年注册的新微信可能不适用!) ...

慕公子的博客 1728
上一篇: Python机器学习案例——基于用户的电影推荐系统
下一篇: 9个必知的Python操作文件/文件夹方法,你知道几个
大模型教程.
博客等级 码龄5年 5275粉丝 2887原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值