单身程序员如何利用Python技术俘获女生的心

又到一年虐狗节,今年的七夕,你脱单了吗?如果没脱单,那么不要方,我也没有,如果脱单了,那你点进来干嘛呢!

做单身狗做久了,可能就真的习惯了一个人,习惯了一个人的孤单、悲伤,也习惯了坚强。

可是,你单身的原因又是什么呢?是因为不想将就?不想随便说爱?还是因为没有遇见那个Ta……

缘分真的莫名其妙,我们每天与那么多的人擦身而过,也许其中的某一人就是陪伴我们走过一生那一个。

不要错过是我们获得幸福的重要法宝,喜欢Ta当然要告诉Ta,要知道你并不缺少朋友,你需要的是一个爱人。在七夕这个浪漫的日子,拿出自己积蓄已久的勇气,大声表白Ta吧!

表白的方式千千万万

送花太普通~

烛光晚餐没新意~

看电影没重点~

为大家的幸福准备了一个表白神器

这可是程序员小哥哥熬夜加班开发出来的

当当当

利用Python技术制作了一个小工具,实现实时监控微信聊天记录

需填入对方姓名,并运行该程序,会根据聊天内容生成词云图(暂时不支持根据历史聊天记录生成词云图)

运行需要安装python编程环境

究竟是如何实现的呢?看大神的操作

微信聊天生成词云使用说明:

1登录微信,监听关注的微信好友,存储信息:

我们执行wx_word.exe这个程序,会弹出一个二维码(跟平时登录微信的二维码一样),扫描二维码之后,根据提示会让你输入关注的微信好友名称(注意:名称是微信好友的备注名)。

之后你与对方的聊天记录就被你监听并保存到本地(信息存储本地,不必担心聊天信息泄露)。

2生成词云图:

当你想生成词云图的时候,运行word_parse.py脚本文件(运行脚本文件需要安装python3及以上版本的编译环境),运行完成之后,便会生成心形的词云图。

3运行的环境:

1.windows电脑

2.安装python3及以上版本的编译环境

3.安装几个必要的python库

WXPY获取实时信息微信聊天记录

我们使用wxpy库监听微信好友的聊天,然后收集与好友的实时聊天记录

# 获取好友聊天

@bot.register(my_friend)

def print_others(msg):

# 输出监听到的消息

if msg.text:

f = open('data.txt', 'a')

f.write(msg.text + ' ')

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吧!

惊喜!

本文所用到的微信监控程序和脚本

全部整理好了,想要领取?

关注公众号回复“七夕脱单”即可获取。

如果大家喜欢这篇文章的话,希望大家能够收藏,转发 谢谢!更多相关资讯可以关注西安华美校区,免费获得java零基础教程!额外附送excel教程!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180817A1D5H500?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券