來源:騰訊課堂Coding學院
ID:ke_coding
又到一年情人節,今年的七夕,你脫單了嗎?如果沒脫單,那麼不要方,我也沒有,如果脫單了,那你點進來幹嘛呢!
單身久了,可能就真的習慣了一個人,習慣了一個人的孤單、悲傷,也習慣了堅強。
可是,你單身的原因又是什麼呢?是因為不想將就?不想隨便說愛?還是因為沒有遇見那個Ta……
緣分真的莫名其妙,我們每天與那麼多的人擦身而過,也許其中的某一人就是陪伴我們走過一生那一個。
不要錯過是我們獲得幸福的重要法寶,喜歡Ta當然要告訴Ta,要知道你並不缺少朋友,你需要的是一個愛人。在七夕這個浪漫的日子,拿出自己積蓄已久的勇氣,大聲表白Ta吧!
表白的方式千千萬萬
送花太普通~
燭光晚餐沒新意~
看電影沒重點~
播妞可是為了大家的幸福準備了一個表白神器
這可是程式員小哥哥熬夜加班開發出來的
噹噹當
利用Python技術製作了一個小工具,實現實時監控微信聊天記錄
-
需填入對方姓名,並執行該程式,會根據聊天內容生成詞雲圖(暫時不支援根據歷史聊天記錄生成詞雲圖)
-
執行需要安裝python程式設計環境
究竟是如何實現的呢?看大神的操作
微信聊天生成詞雲使用說明:
一.登入微信,監聽關註的微信好友,儲存資訊:
我們執行wx_word.exe這個程式,會彈出一個二維碼(跟平時登入微信的二維碼一樣),掃描二維碼之後,根據提示會讓你輸入關註的微信好友名稱(註意:名稱是微信好友的備註名)。
之後你與對方的聊天記錄就被你監聽並儲存到本地(資訊儲存本地,不必擔心聊天資訊洩露)。
二.生成詞雲圖:
當你想生成詞雲圖的時候,執行word_parse.py指令碼檔案(執行指令碼檔案需要安裝python3及以上版本的編譯環境),執行完成之後,便會生成心形的詞雲圖。
三.執行的環境:
-
windows電腦
-
安裝python3及以上版本的編譯環境
-
安裝幾個必要的python庫
wxpy獲取實時微信聊天記錄
我們使用wxpy庫監聽微信好友的聊天,然後收集與好友的實時聊天記錄
# 獲取好友聊天
@bot.register(my_friend)
def print_others(msg):
# 輸出監聽到的訊息
if msg.text:
f = open(‘data.txt’, ‘a’)
f.write(msg.text + ‘\n’)
embed()
jieba分詞
我們利用jieba 庫對記錄進行分詞操作,能將一個句子分為單個詞語。我們對jieba做一個簡單的瞭解,以下為官方檔案中的一部分:
jieba.cut 方法接受三個輸入引數: 需要分詞的字串;cut_all 引數用來控制是否採用全樣式;HMM 引數用來控制是否使用 HMM 模型
程式碼示例:
# encoding=utf-8
import jieba
seg_list = jieba.cut(“我來到北京清華大學”, cut_all=True)
print(“Full Mode: “ + “/ “.join(seg_list)) # 全樣式
seg_list = jieba.cut(“我來到北京清華大學”, cut_all=False)
print(“Default Mode: “ + “/ “.join(seg_list)) # 精確樣式
seg_list = jieba.cut(“他來到了網易杭研大廈”) # 預設是精確樣式
print(“, “.join(seg_list))
seg_list = jieba.cut_for_search(“小明碩士畢業於中國科學院計算所,後在日本京都大學深造”) # 搜尋引擎樣式
print(“, “.join(seg_list))
輸出:
【全樣式】: 我/ 來到/ 北京/ 清華/ 清華大學/ 華大/ 大學
【精確樣式】: 我/ 來到/ 北京/ 清華大學
【新詞識別】:他, 來到, 了, 網易, 杭研, 大廈 (此處,“杭研”並沒有在詞典中,但是也被Viterbi演演算法識別出來了)
【搜尋引擎樣式】: 小明, 碩士, 畢業, 於, 中國, 科學, 學院, 科學院, 中國科學院, 計算, 計算所, 後, 在, 日本, 京都, 大學, 日本京都大學, 深造
wordcloud庫
我們使用wordcloud包生成詞雲圖,首先瞭解一下其用法:
# wordcloud.WordCloud的一些可控引數
class wordcloud.WordCloud(font_path=None, width=400, height=200, margin=2, ranks_only=None,prefer_horizontal=0.9,mask=None, scale=1, color_func=None, max_words=200, min_font_size=4,stopwords=None, random_state=None,background_color=‘black’, max_font_size=None, font_step=1,mode=‘RGB’, relative_scaling=0.5, regexp=None, collocations=True,colormap=None,normalize_plurals=True)
心形詞雲圖:
為了生成心形的詞雲,我們首先找一張心形的圖片:
程式碼示例:
# 生成詞雲圖
pic = imread(‘./xin.jpg’)
wc = wordcloud.WordCloud(mask=pic, font_path=‘./simhei.ttf’, width=500, height=300,background_color=‘white’).generate(word)
# 儲存詞雲圖
wc.to_file(os.path.join(d, “wechat_cloud.png”))
# 用plt將圖畫出來
plt.imshow(wc)
plt.axis(‘off’)
plt.show()
效果圖:下圖是小編自己的聊天資訊生成的圖,感覺是不是很棒啊!!!
趕緊學一招然後發給心儀的那個Ta吧!
《Linux雲端計算及運維架構師高薪實戰班》2018年08月27日即將開課中,120天衝擊Linux運維年薪30萬,改變速約~~~~
*宣告:推送內容及圖片來源於網路,部分內容會有所改動,版權歸原作者所有,如來源資訊有誤或侵犯權益,請聯絡我們刪除或授權事宜。
– END –
更多Linux好文請點選【閱讀原文】哦
↓↓↓