如何利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例
前几天给大家分享了利用Python网络爬虫抓取微信朋友圈的动态(上)和利用Python网络爬虫爬取微信朋友圈动态——附代码(下),并且对抓取到的数据进行了Python词云和wordart可视化,感兴趣的伙伴可以戳这篇文章:利用Python词云和wordart可视化工具对朋友圈数据进行可视化。
今天我们继续focus on微信,不过这次给大家带来的是利用Python网络爬虫抓取微信好友总数量和微信好友男女性别的分布情况。代码实现蛮简单的,具体的教程如下。
相信大家都知道,直接通过网页抓取微信的数据不太可行,但是强大的Python提供了一个itchat库,搭建了链接微信好友信息的友好桥梁,直接上代码,如下图所示。

关键部分的代码,都有注释,方便大家理解。当程序运行的时候,会弹出一个微信二维码,此时需要用手机扫码授权登录。如果您当时正在微信电脑版上登录的话,此时微信会强制退出,然后进行授权。授权成功之后,程序会继续往下执行,稍等片刻之后,便可以给您返回您的微信好友数量信息。
在这里,以小编的微信好友为例,程序运行之后,得到的信息如下图所示:

可以看到,小编的微信好友共有1637人。相信很多小伙伴已经知道在手机微信页面的第二个选项卡“通讯录”下,一直往下拉取好友列表,直到最后,就可以看到自己微信好友的数量,大家可以试试看,是不是和Python程序抓取到的数量是否一致。
接下来,小编继续带您继续发现微信好友中的男女比例。其实也很简单,代码实现也很容易,这里介绍两种方式,如下图所示。(注:代码是接着前面的程序往下继续写的)

可以自定义一个函数,获取性别信息,也可以直接调用value_counts()方法,可以更方便统计各项出现的次数。小编的微信好友男女数量情况如下图所示,在这里,1代表男士,2代表女士,0代表未知性别(因为有的好友并没有设置性别这一项)。

可以看到,小编有884位男性好友,拥有655位女性好友,还有将近100位好友未知男女性别情况。
至此,利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例已经完成,小伙伴们可以打开电脑,赶紧去尝试一下吧,简单的几行代码,带你玩转微信好友~~~
这篇文章的主要参考链接在这里:https://blog.csdn.net/zhanshirj/article/details/74166303,感谢大佬提供的思路和方法。
下一篇文章,小编继续给大家分享微信好友的那些事儿,带大家利用Python网络爬虫抓取微信好友的所在省位和城市分布,并且对其进行可视化,敬请关注~~
最后,祝大家520节日快乐!有女朋友的抱紧女朋友,有老婆的抱紧老婆,啥也没有的请抱紧你的基友~~
如何利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例的更多相关文章
- 如何利用Python网络爬虫抓取微信朋友圈的动态(上)
今天小编给大家分享一下如何利用Python网络爬虫抓取微信朋友圈的动态信息,实际上如果单独的去爬取朋友圈的话,难度会非常大,因为微信没有提供向网易云音乐这样的API接口,所以很容易找不到门.不过不要慌 ...
- 利用Python网络爬虫抓取微信好友的签名及其可视化展示
前几天给大家分享了如何利用Python词云和wordart可视化工具对朋友圈数据进行可视化,利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例,以及利用Python网络爬虫抓取微信好友的所 ...
- 利用Python网络爬虫抓取微信好友的所在省位和城市分布及其可视化
前几天给大家分享了如何利用Python网络爬虫抓取微信好友数量以及微信好友的男女比例,感兴趣的小伙伴可以点击链接进行查看.今天小编给大家介绍如何利用Python网络爬虫抓取微信好友的省位和城市,并且将 ...
- 如何利用Python网络爬虫爬取微信朋友圈动态--附代码(下)
前天给大家分享了如何利用Python网络爬虫爬取微信朋友圈数据的上篇(理论篇),今天给大家分享一下代码实现(实战篇),接着上篇往下继续深入. 一.代码实现 1.修改Scrapy项目中的items.py ...
- 利用Python网络爬虫爬取学校官网十条标题
利用Python网络爬虫爬取学校官网十条标题 案例代码: # __author : "J" # date : 2018-03-06 # 导入需要用到的库文件 import urll ...
- python网络爬虫抓取动态网页并将数据存入数据库MySQL
简述以下的代码是使用python实现的网络爬虫,抓取动态网页 http://hb.qq.com/baoliao/ .此网页中的最新.精华下面的内容是由JavaScript动态生成的.审查网页元素与网页 ...
- python网络爬虫抓取网站图片
本文介绍两种爬取方式: 1.正则表达式 2.bs4解析Html 以下为正则表达式爬虫,面向对象封装后的代码如下: import urllib.request # 用于下载图片 import os im ...
- PID控制器的应用:控制网络爬虫抓取速度
一.初识PID控制器 冬天乡下人喜欢烤火取暖,常见的情形就是四人围着麻将桌,桌底放一盆碳火.有人觉得火不够大,那加点木炭吧,还不够,再加点.片刻之后,又觉得火太大,脚都快被烤熟了,那就取出一些木碳…… ...
- 基于Thinkphp5+phpQuery 网络爬虫抓取数据接口,统一输出接口数据api
TP5_Splider 一个基于Thinkphp5+phpQuery 网络爬虫抓取数据接口 统一输出接口数据api.适合正在学习Vue,AngularJs框架学习 开发demo,需要接口并保证接口不跨 ...
随机推荐
- [转载]不唐突的JavaScript的七条准则
经过多年的开发.教学和编写不唐突的JavaScript, 我发现了下面的一些准则.我希望它们可以帮助你对“为什么这样设计和执行JavaScript比较好”有一点理解.这些规则曾经帮助我更快地交付产品, ...
- Python学习第二天-编写三级菜单
编写三级菜单:1. 运行程序输出第一级菜单2. 选择一级菜单某项,输出二级菜单,同理输出三级菜单3. 菜单数据保存在文件中4. 让用户选择是否要退出5. 有返回上一级菜单的功能 # Author: z ...
- ASP.NET-ajax.acionlink使用
Ajax 属性的ActionLink方法可以创建一个具有异步行为的锚标签. ActionLink方法的第一个参数指定了链接文本,第二个参数是要异步调用的操作的名称.类似于同名的HTML辅助方法,AJA ...
- Atitit.html解析器的选型 jsoup nsoup ,java c# .net 版本号
Atitit.html解析器的选型 jsoup nsoup ,java c# .net 版本号 1. 框架选型的要求 1 1.1. 文档多 1 1.2. 跨平台 1 2. html解析器特性: 1 2 ...
- Android笔记---点击事件的四种写法
Android 点击事件的四种写法: 1. 以内部类的形式实现 OnClickListener 接口.定义点击事件 class MainActivity extents Activity{ // .. ...
- 【Struts2学习笔记(12)】Struts2国际化
(1)准备资源文件,资源文件的命名格式例如以下: baseName_language_country.properties baseName_language.properties baseName. ...
- Func委托和Action委托
http://stackoverflow.com/questions/4317479/func-vs-action-vs-predicate The difference between Func a ...
- dig linux下的使用
一般来说linux下查询域名解析有两种选择,nslookup或者dig,而在使用上我觉得dig更加方便顺手. 如果是在debian下的话,只要装上dnsutils这个包就可以使用dig命令了. 最基本 ...
- Mvc 返回文件直接下载
今天碰到一个问题,前端点击下载文件,后端判断文件是否存在,不存在则自动生成文件(图片),返回前端会自动下载文件 网上查了一些 Mvc action中返回File类型 设置一些contentType ...
- sicily 1004. 简单哈希
Description 使用线性探测法(Linear Probing)可以解决哈希中的冲突问题,其基本思想是:设哈希函数为h(key) = d, 并且假定哈希的存储结构是循环数组, 则当冲突发生时, ...