持续更新中,文中有代码、有效果图

写了四个脚本,其中第一个是全网独一份的,能借用微软AI测颜值api的聊天机器人(最新动态,现在已经可以用本地机器学习的模型来测试颜值了,利用华南理工开放的五百张中国人脸来学习,原理是tensorflow做的cnn分类,没有做回归,只能整数打分,我看看啥时候能放出来),第二个是统计微信好友信息并生成xls文件发给自己的工具,第三个是用微信好友签名信息生成词云的工具(可以设置词云形成的图案),第四个是生成全国微信好友分布地图

项目代码部分已经放上,欢迎知友copy下载检验,除了都用到itchat库外,还要根据新功能另行pip install。

0、聊天机器人

可以根据信息,自动回复、发送种子文件、自动报时,另外还接入微软小冰的图片颜值检测接口,可以根据对方发来图片来回复评分消息,后台也能给文件助手发特定消息来引导逻辑,控制开关机器人。反正Python能干的都能接上。

最有趣也是最私人化的就是自动回复功能,曾经也尝试过拿图灵api来玩,最后发现这样的可玩性并不高,一是从此图灵服务器到我服务器肯定有延迟,二是图灵功能强大后需要充值,三是自己写逻辑也很好玩。

写自动回复,发现互动效果最好的不是关键词回复,而是表情包、某些无意义语气词等。这说明,评判机器和人互动的优良与否,取决于你能和他聊多久,而不是准确性,假如你能和一个妹子一直互动一辈子,那你们之间一定有特别的缘分。

效果图如下,这张显示了和妹子互动骗图的一部分。 />

其实我觉得她的颜值在7.5到8分左右。微软小冰接口代码后面会发,代码是全网独一份的。抓包解码是关键。

下面这两张是文字聊天的,效果显著,显然在此时此刻,他不知道屏幕后的我是个机器人 />

/>

将写好的脚本挂在阿里云一块钱一个月学生主机上,相比于挂在自己的主机上,稳定性更好,不容易掉线。

1、统计好友信息的工具。

扫码登录几秒内立即完成统计好友信息,包括昵称、性别、男女总数、签名然后做成xls发送到文件传输助手。拿了号来测试。 />

(6月1号第一次修改,加了上面的三张效果图,加了第一个项目的代码)

还真有人看代码,那我先放第二个代码,python2.7的,python3也能跑,统计微信好友信息生成excel,挺简单的。需要先pip下itchat和xlwt库。

# coding:utf-8

import itchat,time,sys,xlwt

file = xlwt.Workbook()

table = file.add_sheet('info',cell_overwrite_ok=True)

# 登录-持续

itchat.auto_login()

print(u"logged")# 获取好友列表

friends = itchat.get_friends(update=True)[0:]

male = female = other = 0

for i in friends[1:]:

sex = i["Sex"] if sex == 1:

male += 1

elif sex == 2:

female += 1

else:

other += 1

total = len(friends[1:])

table.write(0,5,u'【made by junzi】')

table.write(0,7,u'【共'+str(len(friends)-1)+u'位朋友,'+str(male)+u'位男性朋友,'+str(female)+u'位女性朋友,另外'+str(other)+u'位不明性别】')

table.write(0,0,u' 【昵称】')

table.write(0,1,u' 【备注名】')

table.write(0,2,u' 【省份】')

table.write(0,3,u' 【城市】')

table.write(0,4,u' 【签名】')

a=0

for i in friends:

table.write(a+1,0,i['NickName'])

table.write(a+1,1,i['RemarkName'])

table.write(a+1,2,i['Province'])

table.write(a+1,3,i['City'])

table.write(a+1,4,i['Signature'])

if i['RemarkName'] == u'':

table.write(a+1,1,u'[ ]')

if i['Province'] == u'':

table.write(a+1,2,u'[ ]')

if i['City'] == u'':

table.write(a+1,3,u'[ ]')

if i['Signature'] == u'':

table.write(a+1,4,u'[ ]')

a=a+1

print(a)

# qm=raw_input("file name >>>:")aaa='weixin_'+time.strftime("%Y%m%d", time.localtime())+'.xls'file.save(aaa)

itchat.send('made by junzi','filehelper')

itchat.send('@%s@%s' % ('fil',aaa), 'filehelper')

print ("over")

代码很简单,扫码之后几秒内完成然后发送一个xls文档到文件传输助手。测了一下python3的处理速度比python2速度快好几倍。使用完就可以退出网页版登录啦~

百度开源的echart,可以把微信好友分布地区在地图上可视化,最后导出的是html文件,html也可以保存png图片文件 />

(9月25日第二次修改,好久没上知乎了,把两个项目的顺序改了,也应众位网友要求把小冰代码放上来了。另外提个建议,检测关键字自动回复最好弄个字典啥的,数据放在excel里读取别放在py文件里,这样后期维护很方便)

import itchat,random,codecs,requests

import json

from itchat.content import *

from json import JSONDecoder

#微软小冰

xiaobing_url="http://kan.msxiaobing.com/Api/ImageAnalyze/Process?service=yanzhi"

@itchat.msg_register(PICTURE)

def picture_reply(msg):

msg['Text'](msg['FileName'])

print msg['FileName']

header = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36',

'Referer': 'http://kan.msxiaobing.com/V3/Portal',

}

url1 = 'http://kan.msxiaobing.com/Api/Image/UploadBase64'

url2 = 'https://kan.msxiaobing.com/Api/ImageAnalyze/Process'

s = requests.Session()

with open(msg['FileName'], 'rb') as f:

image_data = f.read().encode('base64')

r = s.post(url1, data=image_data, headers=header)

imgurl='https://mediaplatform.msxiaobing.com' + r.json()['Url']

#print imgurl,"0"

#print r.text,"1"

sys_time = int(time.time())

payload = {'service': 'yanzhi',

'tid': '7531216b61b14d208496ee52bca9a9a8'}

headerss={

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36',

'Cookie':'_ga=GA1.2.1597838376.1504599720; _gid=GA1.2.1466467655.1504599720; ai_user=sp1jt|2017-09-05T10:53:04.090Z; cpid=YDLcMF5LPDFfSlQyfUkvMs9IbjQZMiQ2XTJHMVswUTFPAA; salt=EAA803807C2E9ECD7D786D3FA9516786; ARRAffinity=3dc0ec2b3434a920266e7d4652ca9f67c3f662b5a675f83cf7467278ef043663; ai_session=sQna0|1504664570638.64|1504664570638'+str(random.randint(11, 999)),

'Referer': 'https://kan.msxiaobing.com/ImageGame/Portal?task=yanzhi&feid=d89e6ce730dab7a2410c6dad803b5986'

}

form = {

'MsgId': str(sys_time) + '733',

'CreateTime': sys_time,

'content[imageUrl]':imgurl

}

r = requests.post(url2,params=payload, data=form,headers=headerss)

print(r.json())

text1=r.json()['content']['text']

print(text1)

return text1

itchat.run()

代码中我删了私人的聊天回复部分等等,见谅。

关注@上官带瓜 ,不错过我的每一个答案

点个赞让我在知道你看到了最后

诸君有新情况随时评论或私信我

python能做什么有趣的东西-Python 里itchat 模块能实现什么有趣的东西?相关推荐

  1. python可以做什么有趣的东西-Python 里itchat 模块能实现什么有趣的东西?

    持续更新中,文中有代码.有效果图 写了四个脚本,其中第一个是全网独一份的,能借用微软AI测颜值api的聊天机器人(最新动态,现在已经可以用本地机器学习的模型来测试颜值了,利用华南理工开放的五百张中国人 ...

  2. python可以干什么-Python可以用来做什么 为你揭开python神秘面纱

    Python可以用来做什么 为你揭开python神秘面纱 时间:2018-01-24     来源:解读Python 最近,编程界又一语言可谓是着实又火了一把,什么语言呢?python,python为 ...

  3. python可以给你干什么-Python可以用来做什么 为你揭开python神秘面纱

    Python可以用来做什么 为你揭开python神秘面纱 时间:2018-01-24     来源:解读Python 最近,编程界又一语言可谓是着实又火了一把,什么语言呢?python,python为 ...

  4. (地理国情监测)arcgis使用python,做arctoolbox,渔网裁剪gdb里的要素,四等分

    (地理国情监测)arcgis使用python,做arctoolbox,渔网裁剪gdb里的要素,四等分: # ecoding=gbk coding = 'utf-8' import os import ...

  5. python能做什么项目-这十个Python实战项目,让你瞬间读懂Python!

    前言 Python 是一种极具可读性和通用性的编程语言.Python 这个名字的灵感来自于英国喜剧团体 Monty Python,它的开发团队有一个重要的基础目标,就是使语言使用起来很有趣.Pytho ...

  6. 学python可以做什么产品-学了 Python,能用来做什么?实际应用场景有哪些??...

    无论是工作还是生活,Python都是一项实用而有趣的技能. Python具有广泛的应用程序,可以总结下图. 适用于工作:Python开发,Python搜寻器,大数据: 在生活中,爬行动物为生活增添了很 ...

  7. python能做什么程序-学了 Python,能用来做什么?实际应用场景有哪些??

    无论是工作还是生活,Python都是一项实用而有趣的技能. Python具有广泛的应用程序,可以总结下图. 适用于工作:Python开发,Python搜寻器,大数据: 在生活中,爬行动物为生活增添了很 ...

  8. 学python能做什么类型的工作-python是什么?python可以用来干什么?

    Python最近几年发展的非常迅速,尤其是2017年,随着人工智能概念的兴起,python的关注度也是越来越高,python相继纳入浙江省高考和山东省的小学教材.对于从事IT行业的人来说,对pytho ...

  9. python能做什么-普通小白学会Python到底具体能做什么呢?

    Python的应用非常广泛,无论是工作还是生活,Python都是一个既实用又有趣的技能. 刨掉我们常说的Python主要应用领域:Web前端开发,云计算,人工智能,系统运维等等,这些是需要深度学习的. ...

  10. python能做什么工作-学了Python可以做什么工作

    学了Python可以做什么工作 用 Python 写爬虫 据我所知很多初学 Python 的人都是使用它编写爬虫程序.小到抓取一个小黄图网站,大到一个互联网公司的商业应用.通过 Python 入门爬虫 ...

最新文章

  1. SAP HUMO VLMOVE不支持E库存发货到成本中心
  2. Chrome 开发者工具里的 CSS grid editor
  3. 使用 SAP Business Application Studio 开发 Vue 应用
  4. 3-JAVA中的JSON操作
  5. jquery插件dataTables(dataTables在显示表格的时候,果然是个好东西,支持排序/搜索/分页/...)
  6. C语言程序设计double,C语言中double类型数据占字节数为
  7. 如何修改WampServer服务器上传文件的大小?
  8. 《python程序员面试宝典(陈屹)》chapter1 技术面试方法论
  9. STM32应用笔记分类汇总,值得收藏
  10. 前端工程师面试时自我介绍该如何做?
  11. java Eclipse 如何打开bin文件目录视图
  12. 使用diskpart制作U盘启动盘
  13. 使用rpc(thrift或protobuf)进行前后端交互的若干种方式
  14. 深度学习中的正则化方法
  15. 流行的框架Nohttp到来,让我们见证封装好的Nohttp详细使用步骤吧
  16. 逆袭之旅DAY20.XIA.循环结构
  17. 成为游戏开发者的一流技巧
  18. [译]自上而下认识Elasticsearch
  19. dependencies和devDependencies的区别
  20. CFA机考多久出成绩?CFA机考成绩如何查

热门文章

  1. SQL数据分析常用案例总结
  2. 海康威视SDKjava二次开发身份证人脸识别
  3. OBJ(3D模型)文件格式
  4. 手把手教你安装黑苹果之openCore-0.6.3 EFI制作全过程,非常详细
  5. 二叉树非递归程序c语言,二叉树非递归遍历C语言实现
  6. AI中的图像识别技术的原理及过程
  7. Python 针对Excel操作
  8. python网页登录验证码_15.Python实现识别登录验证码(入门)
  9. matlab中如何对一个小数取整,学习笔记153—matlab中小数如何取整?
  10. C语言/C++基础之奔跑的小人