10分钟教你用Python玩转微信之抓取好友个性签名制作词云

01 前言+展示

各位小伙伴我又来啦。今天带大家玩点好玩的东西,用Python抓取我们的微信好友个性签名,然后制作词云。怎样,有趣吧~好了,下面开始干活。我知道你们还是想先看看效果的。

后台登录:


词云:

02 环境准备

Python版本:3.6.0
系统平台:Windows 10 X64
IDE:pycharm

相关模块:
re模块;
itchat模块;
jieba模块;
import matplotlib.pyplot模块;
wordcloud模块;
以及一些Python自带的模块。

03 获取个性签名

首先要做的,当然还是登录微信,获取好友的个性签名啦:

 1import itchat 2# 先登录 3itchat.login() 4 5# 获取好友列表 6 friends = itchat.get_friends(update=True)[0:] 7 for i in friends: 8    # 获取个性签名 9    signature = i["Signature"]10print(signature)

但是获取下来之后我们会发现,有大量的span,class,emoji,emoji1f3c3等的字段:

这是因为个性签名中使用了表情符号,这些字段我们都是要过滤掉的,所以写个正则和然后用replace方法去掉吧。

04 过滤掉emoji表情

这次把相关字段给replace成空格先:

1# 获取好友列表2friends = itchat.get_friends(update=True)[0:]3for i in friends:4  signature = i["Signature"].strip().replace("span", "").replace("class", "").replace("emoji", "")# 获取个性签名5  print(signature)

然后发现,还是不太妥当:

这里要借助一下re了,写个正则把这些统统干掉:

1# 获取好友列表2friends = itchat.get_friends(update=True)[0:]3for i in friends:4  signature = i["Signature"].strip().replace("span", "").replace("class", "").replace("emoji", "")# 获取个性签名5  rep = re.compile("< =.+/>")# 正则匹配过滤掉emoji表情,例如emoji1f3c3等6  signature = rep.sub("", signature)7  print(signature)

为了照顾新手朋友,这里直接用了最简单的正则形式,把尖括号两端的直接匹配然后干掉,不过一般不推荐这样干。推荐用这样的表达式rep = re.compile("[^\u4e00-\u9fa5^]")。关于正则和re大家还是自己去找资料学习吧。然后perfect了:

05 制作词云

接来下用jieba分词,然后制作成词云,在此之前记得安装jieba和wordcloud库。

 1 # jieba分词 2 wordlist_jieba = jieba.cut(text, cut_all=True) 3 wl_space_split = " ".join(wordlist_jieba) 4 5 # 这里要选择字体存放路径,win的字体在windows/Fonts中 6 # #如果是中文必须要添加字体路径,否则会显示成框框 7 my_wordcloud = WordCloud(background_color="white", width=1600, height=1200, 8                         font_path='C:\Windows\Fonts\苹方\PingFang Bold_0.ttf').generate(wl_space_split) 910plt.imshow(my_wordcloud)11plt.axis("off")12plt.show()

记得要设置好中文路径哦。

效果图:

06 完整代码

欲获取代码,请关注我们的微信公众号【程序猿声】,在后台回复:pycode02。即可获取。

微信公众号

推荐文章:10分钟教你用Python做个打飞机小游戏超详细教程
推荐文章:10分钟教你用python下载和拼接微信好友头像图片

posted @ 2018-11-27 22:27 短短的路走走停停 阅读(...) 评论(...) 编辑 收藏

10分钟教你用Python玩转微信之抓取好友个性签名制作词云相关推荐

  1. 如何用计算机自动回复微信,10分钟教你用Python实现微信自动回复功能

    01 前言&&效果展示 相信大家都有忙碌的时候,不可能一直守在微信上及时回复消息.但微信又不能像QQ一样设置自动回复.无妨,今天,我们就来用Python实现微信的自动回复功能吧,并且把 ...

  2. 10分钟教你用python打造贪吃蛇超详细教程

    更多精彩尽在微信公众号[程序猿声] 10分钟教你用python打造贪吃蛇超详细教程 在家闲着没妹子约, 刚好最近又学了一下python,听说pygame挺好玩的.今天就在家研究一下, 弄了个贪吃蛇出来 ...

  3. 10分钟教你用python如何正确把妹

    前言 今天没妹子约,刚好研究一下.如何用神奇的python打造一个把妹神器吧.看完这个,你们就能走向人生巅峰,迎娶白富美啦. 我知道你们想看看效果 当然啦,这只是测试版的效果,真正的版本可比这个厉害多 ...

  4. python爬取B站评论制作词云

    python爬取B站评论制作词云 江山代有才人出,B站评论占一半 废话不多说,咱们直接上代码` import imageio import jieba import wordcloud import ...

  5. python怎么爬取知乎回答并制作词云_使用python爬取流浪地球影评并制作词云,看看别人都说了些说什么...

    流浪地球影评爬取 大过年的,蹭个热度,看完电影后爬一下影评并作出词云. 本次影评取自豆瓣: https://movie.douban.com/subject/26266893/ 抓包 首先是拿到访问的 ...

  6. 10分钟教你利用Python网络爬虫获取穷游攻略

    完整源码在底部 [一.项目背景] 穷游网提供原创实用的出境游旅行指南.攻略,旅行社区和问答交流平台,以及智能的旅行规划解决方案,同时提供签证.保险.机票.酒店预订.租车等在线增值服务.穷游" ...

  7. 10分钟教你用Python获取百度地图各点的经纬度信息

    前言 Python确实是个好东西,可以用来解决很多数据上的烦恼.结合现在各个平台提供的API,可以用Python做很多有用的需求哦~ 需求分析 之前写论文的时候,就有这个需求了.就是抓取百度地图上某些 ...

  8. 豆酱小白与python(一):提取B站弹幕并制作词云

    文章目录 1.python环境安装 2.python语法和知识学习 4.爬取B站单个视频弹幕,并绘制词云 5.爬取B站多个视频弹幕(自定义关键词),并绘制词云 6 .1.爬取单个视频弹幕绘制词云cod ...

  9. Python爬虫:爬取网络流行词制作词云

    导入: 最近突然觉得,在生活中可以看到很多与词云类似的图片,(不知道是不是我的个性化广告,哈哈哈)总之,闲来无事,自己也写一个代码来生成词云. 用什么数据来生成呢?再三回忆,突然想起了之前有一个网络流 ...

最新文章

  1. 程序员成长路上的团队修炼之道
  2. Obj-C的hello,world 2
  3. 轻量应用服务器MySQL远程连接踩坑
  4. python抓取微博数据中心_有哪些「神奇」的数据获取方式?
  5. 外企面试官们爱提的十个问题
  6. Can’t Activate Reporting Services Service in SharePoint
  7. Valgrind快速入门指南
  8. VS2003创建动态库的一点笔记
  9. 天津铁路警方打击倒票专项行动破案19起 抓获19人
  10. oracle—“操作记录已被里一个用户锁住” 解决办法
  11. php redis 查询,Redis慢查询日志 PHP中使用redis – 安装扩展模块
  12. firewalld--centos7.x的防火墙--使用流程步骤:
  13. 中岛美雪音乐合集-原曲流行极品音乐专辑
  14. Java设计模式之观察者模式应用与实战
  15. uWSGI和Gunicorn
  16. 信息学奥赛一本通 1247:河中跳房子 | OpenJudge NOI 1.11 10:河中跳房子 | 洛谷 P2855 [USACO06DEC]River Hopscotch S
  17. 那些你所不知道的结构光技术
  18. sCrypt 合约中的椭圆曲线算法:第二部分
  19. Cesium对entity的操作以及资源记录(增删改查)
  20. 【K哥爬虫普法】百度、360八年乱战,robots 协议之战终落幕

热门文章

  1. Google Maps API licensing
  2. SAR/毫米波雷达 论文阅读 | Freehand, Agile, and High-Resolution Imaging, IEEE Access 2019
  3. gho镜像安装器linux,Ghost安装器
  4. html页面实现文件上传
  5. 联想x3850x6重装系统_中心管理服务器介绍及配置方案:联想服务器 X3850X6
  6. 三菱编程软件GX Works2_马立杰_新浪博客
  7. python之Tkinter详解
  8. [Paper Note] Densely Residual Laplacian Super-Resolution
  9. 如何在RenderWare中复制Clump
  10. Goby 漏洞更新 | 速达软件 V.NET home 文件 存在 Struts2 代码执行漏洞