背景:

初学python,跟着网上博客做《爬自己的微信好友》。

参考文章:https://blog.csdn.net/sun_wangdong/article/details/79050230

实验环境:

Python 3.6+ Jupyter notebook

实验代码:

import itchat #导入模块
itchat.login() #微信扫描弹出的二维码图片,登录
friends = itchat.get_friends(update=True)[0:]  #爬取自己所有的好友信息,并生成一个list

1.统计好友男女比例

#初始化计数器
male = female = other = 0
#friends[0]是自己的信息,所以要从friends[1]开始
for i in friends[1:]:sex = i["Sex"]if sex == 1:male += 1elif sex == 2:female += 1else:other +=1
#计算朋友总数
total = len(friends[1:])
#打印出自己的好友性别比例
print("男性好友: %.2f%%" % (float(male)/total*100) + "\n" +
"女性好友: %.2f%%" % (float(female) / total * 100) + "\n" +
"不明性别好友: %.2f%%" % (float(other) / total * 100))

之后会输出打印自己朋友的男女比例,我的是:

男性好友: 78.08%
女性好友: 15.75%
不明性别好友: 6.16%

2.自己微信好友的城市分布

def get_var(var): #???

variable = [] for i in friends: value = i[var] variable.append(value) return variable生成固定格式的列表,存储为csv格式

from pandas import DataFrame
data = {'NickName': NickName, 'Sex': Sex, 'Province': Province,'City': City, 'Signature': Signature}
frame = DataFrame(data)
frame.to_csv('data.csv', index=True)

但有个问题,data.csv文件用excel打开乱码,Editplus打开后正常。

用网上说的另存为utf-8编码,还是乱码。

我的最终对策是:Edit打开后,另存为Unicode编码,可以正常显示了。

3.

import re
siglist = []
for i in friends:signature = i["Signature"].strip().replace("span","").replace("class","").replace("emoji","")rep = re.compile("1f\d+\w*|[<>/=]")signature = rep.sub("", signature)siglist.append(signature)
text = "".join(siglist)
import jieba
wordlist = jieba.cut(text, cut_all=True)
word_space_split = " ".join(wordlist)
import matplotlib.pyplot as plt
from wordcloud import WordCloud, ImageColorGenerator
import numpy as np
import PIL.Image as Image
coloring = np.array(Image.open("C:\\Users\\guohua\\Desktop\\abc.jpg"))
my_wordcloud = WordCloud(background_color="white", max_words=150,mask=coloring, max_font_size=60, random_state=42, scale=2,font_path= r'C:\Windows\Fonts\STZHONGS.TTF').generate(word_space_split)  
image_colors = ImageColorGenerator(coloring)
plt.imshow(my_wordcloud.recolor(color_func=image_colors))
plt.imshow(my_wordcloud)
plt.axis("off")
plt.show()

这里遇到的主要问题是,wordcloud安装有问题,提示缺少Microsoft C++14.0,

按照网上解决方案,是从这个网址直接下载安装:https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud

但实际中使用QQ浏览器下载时,提示找不到文件,可能被移除。

后来发现是QQ浏览器的问题,使用IE 或者 Chrome其他浏览器都可以正常下载。

总结下:

jupyter notebook 基本使用已经掌握了。

需要留心的是wordcloud下载失败的问题。

不要使用QQ浏览器。

爬自己的微信好友遇到的问题相关推荐

  1. Python爬取的微信好友信息里我看到了自律 | CSDN博文精选

    作者 | 吴小鹏 来源 | 数据札记倌(ID:Data_Groom) "stay hungry, stay foolish" "不舍爱与自由" "自律 ...

  2. python爬虫好友图片_Python爬取所有微信好友头像,制作微信好友图片墙

    今天咱就试试怎么爬取微信列表中所有好友的头像,并做成一张图片墙,代码不长,60 行就可以搞定. 核心是利用三个库:wxpy 库,用于获取好友头像然后下载 Pillow 库,用于拼接头像 Pyinsta ...

  3. 用python爬取一个人所有信息_python实战===爬取所有微信好友的信息

    '''爬取所有T信好友的信息''' importitchatfrom pandas importDataFrame itchat.login() friends=itchat.get_friends( ...

  4. unity图片变成马赛克如何取像素并改变颜色_爬取微信好友头像完成马赛克拼图!千张头像拼成海贼王!...

    马赛克拼图 何谓马赛克拼图(千图成像),简单来说就是将若干小图片平凑成为一张大图,如下图路飞一样,如果放大看你会发现里面都是一些海贼王里面的图片. Our Tragets 爬取所有微信好友的头像 将所 ...

  5. 大蟒蛇python头像_Python微信好友头像大拼图案例

    最近和微信好友有关的数据分析基本都已经实现,包括微信好友性别分布分析及饼图可视化展示案例,微信好友地区分布分析及地图可视化展示案例,微信好友签名分析(数据挖掘)及文字云直观展示案例,参考此前的几篇文章 ...

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

    大家好! 因为无事可做,就想着看看爬取一下微信好友,然后理智的分析一波~~ 01 数据采集 我们这次使用的是Itchat库来获取的微信好友数据. 01 登陆 用Itchat库来获取微信好友数据,首先需 ...

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

    大家好! 因为无事可做,就想着看看爬取一下微信好友,然后理智的分析一波~~编程学习资料点击领取 01 数据采集 我们这次使用的是Itchat库来获取的微信好友数据. 01 登陆 用Itchat库来获取 ...

  8. 爬虫综合大作业(震惊!爬取了590位微信好友后竟然发现了)

    作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/3159 可以用pandas读出之前保存的数据:见上次博客爬取全部的校园新闻 ...

  9. python爬微信头像_使用python itchat包爬取微信好友头像形成矩形头像集的方法

    初学python,我们必须干点有意思的事!从微信下手吧! 头像集样例如下: 大家可以发朋友圈开启辨认大赛哈哈~ 话不多说,直接上代码,注释我写了比较多,大家应该能看懂 import itchat im ...

最新文章

  1. 如果你是C开发人员请看这三个显式编程技巧
  2. adcclk最大_STM32 ADC转换时间
  3. Swift - 多线程GCD详解
  4. 特征工程-统计数据特征
  5. Java窗口(JFrame)从零开始(8)——文本框+文本域+密码框
  6. [Qt教程] 第45篇 进阶(五)Qt样式表
  7. Spring Cloud学习笔记-002
  8. Java -- 网络编程(一):Client与Server之间的数据传送
  9. python弹球小游戏程序_Python实现弹球小游戏
  10. 信息学奥赛一本通(1061:求整数的和与均值)
  11. ActiveMQ简单介绍+简单实例
  12. C语言中的一些基本函数说明及使用
  13. Extjs图书管理系统源码 智能化图书管理系统源码
  14. selenium IDE下载及使用
  15. 同一计算机打印机无法连接,共享打印机无法连接怎么办 共享打印机无法连接解决方法【图文教程】...
  16. 学信网电子学历备案表怎么弄
  17. 电表485通讯抄表软件
  18. 搜狗收录怎么增加-搜狗站长推送工具
  19. SpringCloud Gateway API接口安全设计(加密 、签名)
  20. 输入数值n,计算并输出下列多项式的值:S = 1 + 1/1! + 1/2! + 1/3! + 1/4! + ... + 1/n!

热门文章

  1. tcpcopy mysql_利用tcpcopy引流过程
  2. 样本轮廓系数(原理、sklearn.metrics.silhouette_score、silhouette_samples参数介绍)
  3. 华星速充:驰而不息为新能源汽车绿色转型做贡献
  4. 如何在Dreamweaver CS3中使用自定义字体
  5. Mybatis—— 主键回填
  6. 休闲游戏,益智游戏,游戏美术开发介绍
  7. 聊聊游戏:《空洞骑士》那些你不知道事
  8. 解决安卓H5输入框获取焦点软键盘页弹起,页面高度被压缩问题
  9. ctfshow-web入门-爆破wp
  10. 球员管理系统(课设)