中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
用python分析你的朋友圈,很好玩~

設(shè)計喵的內(nèi)心OS:我一臉懵逼點進(jìn)來,一臉懵逼走出去,你說了什么?

事情是這么來的,我看到有朋友在做朋友圈的電子書,也想自己研究一下,發(fā)現(xiàn)原來有個itchart這個微信第三方API可以讀取微信數(shù)據(jù),抱著好奇的想法嘗試了以下,果然非常好玩。

程序結(jié)構(gòu):

getFriendsList.py這個類用來爬取好友信息并保存到指定文件

import itchat
import os
import time

basepath = os.path.dirname(os.path.realpath(__file__))
download_path = basepath+'/downloads'+ '/'

# 調(diào)用itchat接口登錄并拉取數(shù)據(jù)
itchat.login
friends = itchat.get_friends(update=True)[0:]

fmt='%Y%m%d%H%M%S' #定義時間顯示格式
Date=time.strftime(fmt,time.localtime(time.time))

download_file_name = 'friendsList_'+friends[0]['NickName']
+ '_' + Date + '.txt'

f = open(download_path+download_file_name,'wb')
print(download_path+download_file_name)

for i in friends[1:]:
friend = (str(i) + '\n').encode(encoding='gb18030')
# print(str(i))
f.write(friend)

f.close

analyse.py這個類根據(jù)下載的好友數(shù)據(jù)分析好友信息

import re
import os
import time

source_file = 'friendslist_阿西UED_20180105191247.txt'

basepath = os.path.dirname(os.path.realpath(__file__))
download_file = basepath+'/downloads/'+ source_file

fs_str = ''
with open(download_file,'rb') as f:
fs_str = f.read.decode('gb18030')

friends = fs_str.split('\n')

# 初始化計數(shù)器
male = female = other = 0
# 所有省份
Provinces_list =
#friends[0]是自己的信息,所以要從friends[1]開始
for i in friends:
if i.__len__>0:
i = i.replace('
i = i.replace(']>',']>'')
friend = eval(i)

# 統(tǒng)計性別
sex = friend['Sex']
if sex == 1:
male += 1
exit
elif sex ==2:
female += 1
else:
other+=1

# 統(tǒng)計地區(qū)
Province = friend['Province']
Provinces_list.append(Province)


#計算朋友總數(shù)
total = len(friends)
#打印出自己的好友性別比例
print('總好友數(shù): %d' % total + '\n' +
'男性好友: %d 個,占比 %.2f%%' % (male,(float(male)
/total*100)) + '\n' +
'女性好友: %d 個,占比 %.2f%%' % (female,(float
(female) / total * 100)) + '\n' +
'不明性別好友: %d 個,占比 %.2f%%' % (other,
(float(other) / total * 100)))

Provinces_set = set(Provinces_list)
Provinces_dict = {}
for i in Provinces_set:
Provinces_dict[i] = Provinces_list.count(i)
# 對省份字典按value排序
Provinces_dict = sorted(Provinces_dict.items,
key=lambda asd:asd[1],reverse=True)

print('==========人數(shù)排名前10地區(qū)如下============')
top = 0
for k,v in Provinces_dict:
if top<>
print('%s : %d 個,占比 : %.2f%%' %
(k,v,float(v)/total*100))
top+=1

輸出結(jié)果:

總好友數(shù): 1324

男性好友: 680 個,占比 51.36%

女性好友: 592 個,占比 44.71%

不明性別好友: 51 個,占比 3.85%

=======人數(shù)排名前10地區(qū)如下========

未知 : 258 個,占比 : 19.49%

北京 : 211 個,占比 : 15.94%

上海 : 198 個,占比 : 14.95%

廣東 : 173 個,占比 : 13.07%

河南 : 68 個,占比 : 5.14%

浙江 : 63 個,占比 : 4.76%

江蘇 : 51 個,占比 : 3.85%

四川 : 24 個,占比 : 1.81%

山東 : 21 個,占比 : 1.59%

河北 : 19 個,占比 : 1.44%

wordCloud.py根據(jù)簽名生成詞云

詞云來自全部好友的簽名,把簽名收集在一起拼接字符串然后分詞再拼成一張圖片。重復(fù)越多的字越大。

# -*- coding:UTF-8 -*-
import re
import os
import time

base_pic = 'alice_coloring.jpg'
source_file = 'friendsList_阿西UED_20180105191247.txt'

basepath = os.path.dirname(os.path.realpath(__file__))
download_file = basepath+'/downloads/'+ source_file

fs_str = ''
with open(download_file,'rb') as f:
fs_str = f.read.decode('gb18030')

friends = fs_str.split('\n')


siglist =
for i in friends:
if i.__len__>0:
i = i.replace('

i = i.replace(']>',']>'')
friend = eval(i)
# print(friend)
# print(friend['Signature'])
signature = friend['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).replace('\n','')

print(word_space_split)



import matplotlib.pyplot as plt
from wordcloud import WordCloud, ImageColorGenerator
import numpy as np
import PIL.Image as Image

coloring = np.array(Image.open(base_pic))
my_wordcloud = WordCloud(background_color='white',
max_words=2000,mask=coloring,max_font_size=60,
random_state=42,scale=2,
font_path='fonts/STHeiti Light.ttc')
.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

詞云的效果:

python還有其他比較好玩的東西,比如小程序輔助就是python開發(fā)的我經(jīng)過測試已經(jīng)被官方黑名單了,??,不過用來自娛自樂很奈斯。

還能分析你朋友圈全部的內(nèi)容,圖片、文字哪些做微信電子書就是用這個原理做的爬蟲。

原文鏈接是我用js實現(xiàn)的微信跳轉(zhuǎn)支付寶demo有興趣的可以體驗一下,明天文章發(fā)教程。

感覺要轉(zhuǎn)行做開發(fā)了的感覺~ ??

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
用itchat爬取朋友圈好友信息
python 玩微信,超有趣
WordCloud 中英文詞云圖繪制,看這一篇就夠了
如何利用“wordcloud+jieba”制作中文詞云?
Python第三方庫wordcloud(詞云)快速入門與進(jìn)階
python數(shù)據(jù)可視化——詞云
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服