ロボットitchatマイクロチャネルを使用してPythonライブラリの実装(フレンドチャット、チャットグループ)

itchatは、オープンソースのマイクロチャンネル個人番号・インタフェースである、あなたはライブラリを使用することができ、たとえば、マイクロ文字のWebバージョンのすべての操作を実行します。すべてのあなたの友人を、友人を追加し、友人がように、グループチャット、マイクロ文字のロボットとを引きます。ユーザーはドキュメントが、詳細に説明参照ここ

本明細書で使用される主なライブラリーは、チューリング友達チャット、チャットグループを含むマイクロチャネルメッセージを処理することができるロボットを完了する。

1、ライブラリitchatインストール

pip install itchat

インストールが完了した後、スキャンコードは、マイクロ文字のページを着陸着陸された後、二次元コードが表示されます、次のコードを実行します。

2、着陸

import itchat
# 登陆
itchat.auto_login()  # 可设置hotReload = True
# 运行并保持在线状态
itchat.run()

また、itchatもちょうどhotReload = Trueのパラメータを追加し、短い再接続機能を提供し、次の時間はちょうどあなたが携帯電話の終わりにログインできることを確認し、2次元コードをスキャンしてログインする必要はありません。

図3に示すように、メッセージを送信します

itchatライブラリは、マイクロチャネルにメッセージを送信するテキスト、イメージ、動画、及びそのようなファイル転送アシスタントなどの他の添付ファイルの内容を送信することができ、そうであってもよいです。

itchat.send('Hello', toUserName='filehelper')

toUserNameの人々は、公式ドキュメント自体を探し、マイクロ信号にメッセージを送りたい、あなたはマイクロチャンネルモバイル端末でクエリをクリックすることができますそのマイクロ信号を見つけて返すために、ライブラリsearch_friends機能itchatも使用することができ、詳細な使用。

図4に示すように、受信したメッセージ

from itchat.content import *
import requests
import json
import itchat
itchat.auto_login(hotReload = True)
'''
遇到python不懂的问题,可以加Python学习交流群:1004391443一起学习交流,群文件还有零基础入门的学习资料
'''
# 调用图灵机器人的api,采用爬虫的原理,根据聊天消息返回回复内容
def tuling(info):
  appkey = "e5ccc9c7c8834ec3b08940e290ff1559"
  url = "http://www.tuling123.com/openapi/api?key=%s&info=%s"%(appkey,info)
  req = requests.get(url)
  content = req.text
  data = json.loads(content)
  answer = data['text']
  return answer
# 对于群聊信息,定义获取想要针对某个群进行机器人回复的群ID函数
def group_id(name):
  df = itchat.search_chatrooms(name=name)
  return df[0]['UserName']
# 注册文本消息,绑定到text_reply处理函数
# text_reply msg_files可以处理好友之间的聊天回复
@itchat.msg_register([TEXT,MAP,CARD,NOTE,SHARING])
def text_reply(msg):
  itchat.send('%s' % tuling(msg['Text']),msg['FromUserName'])
@itchat.msg_register([PICTURE, RECORDING, ATTACHMENT, VIDEO])
def download_files(msg):
  msg['Text'](msg['FileName'])
  return '@%s@%s' % ({'Picture': 'img', 'Video': 'vid'}.get(msg['Type'], 'fil'), msg['FileName'])
# 现在微信加了好多群,并不想对所有的群都进行设置微信机器人,只针对想要设置的群进行微信机器人,可进行如下设置
@itchat.msg_register(TEXT, isGroupChat=True)
def group_text_reply(msg):
  # 当然如果只想针对@你的人才回复,可以设置if msg['isAt']: 
  item = group_id(u'想要设置的群的名称') # 根据自己的需求设置
  if msg['ToUserName'] == item:
    itchat.send(u'%s' % tuling(msg['Text']), item)
itchat.run()

その後、お友達以下、マイクロチャネルグループは、友人と談笑することができ~~~チューリングロボット

おすすめ

転載: blog.csdn.net/qq_40925239/article/details/92641964