微信聊天机器人、Python、中文词云

微信聊天机器人
Python(有itchat库)

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
'''Risk2S'''
import requests
import itchat #这是一个用于微信回复的库
import time

KEY = '37cc7d236fa549ffb05486b15ebc0' #这个key在图灵机器人下有

# 向api发送请求
def get_response(msg):
  apiUrl = 'http://www.tuling123.com/openapi/api'
  data = {
    'key'  : KEY,
    'info'  : msg,
    'userid' : 'pth-robot',
  }
  try:
    r = requests.post(apiUrl, data=data).json()
    return r.get('text')
  except:
    return

# 注册方法
@itchat.msg_register(itchat.content.TEXT)
def tuling_reply(msg):
  # 为了保证在图灵Key出现问题的时候仍旧可以回复,这里设置一个默认回复
  defaultReply = 'I received: ' + msg['Text']
  # 如果图灵Key出现问题,那么reply将会是None
  reply = get_response(msg['Text'])
  print("微信提问:"+msg['Text'])
  print("微信回答:"+reply+"\n")
  # a or b的意思是,如果a有内容,那么返回a,否则返回b
  return reply or defaultReply
# 为了让修改程序不用多次扫码,使用热启动
itchat.auto_login(True)#图片二维码
itchat.run()

中文词云
Python(wordcloud库)

import matplotlib.pyplot as plt这个库我在Linux下,win下都安装不了。
这时候,下载Anaconda,安装
就可以conda相关库了。这句成功。

十行代码生成词云,还有wordcloud库支持英文,我们需要下载下个中文字库,ttf结尾的文件

import matplotlib.pyplot as plt
from wordcloud import WordCloud
import jieba
text_from_file_with_apath = open('adsl.txt').read()
wordlist_after_jieba = jieba.cut(text_from_file_with_apath, cut_all = True)
wl_space_split = " ".join(wordlist_after_jieba)
my_wordcloud = WordCloud(font_path=r'./simsun.ttf').generate(wl_space_split)
plt.imshow(my_wordcloud)
plt.axis("off")
plt.show()

微信聊天机器人、Python、中文词云_第1张图片

你可能感兴趣的:(python,机器人,微信,api,聊天,python)