Pythonは図霊微信ロボットを実現

1809 ワード

最近pythonを見ていると、いつも先端のものをやっていれば、新鮮さに欠けているような気がします.まずpythonの基本的な文法を1回やってみると、実はできます.ここではpython 3を使っています.macはpython 2を持っています.7、しかしこの2つは共存することができます~、くれぐれもmacが持っているpythonを削除しないでください、中の多くのものはすべてこのバージョンに基づいて実現したためです.
本題に戻ると、微信ロボットを実現するにはまずpythonに基づいているに違いない.これはitchatというライブラリwikiが必要だ.https://itchat.readthedocs.io/zh/latest/intro/handler/
pip3 install itchat

やはりかなり楽しかったです.
使用するライブラリを先にインポート
from itchat.content import *
import requests
import json
import itchat

その後、図霊のapiを呼び出し、メッセージ呼び出しインタフェースに基づいてデータを返す.
def tuling(info):
  appkey = "ffeeed42668044478b82261c341268ab"
  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

個々のユーザのロボットからの返信にはitchatが必要である.msg_regist登録コールバックメソッドは、誰かがあなたと話している間に、このメソッドをコールバックし、自動的に返信します.
@itchat.msg_register([TEXT,MAP,CARD,NOTE,SHARING])
def text_reply(msg):
  itchat.send('%s' % tuling(msg['Text']),msg['FromUserName'])

そしてグループメッセージに対して自動的に返信します
def group_id(name):
  df = itchat.search_chatrooms(name=name)
  return df[0]['UserName']

@itchat.msg_register(TEXT, isGroupChat=True)
def group_text_reply(msg):
  #         @      ,    if msg['isAt']: 
  item = group_id(u'        ') #          
  print(item)
  print(msg)
  if msg['FromUserName'] == item:
    
    itchat.send(u'%s' % tuling(msg['Text']), item)

最後に起動コードを呼び出し、QRコードを吊り上げてログインすれば、微信ロボットを実現できます.
itchat.auto_login(hotReload=True)
itchat.run()

スクリプトアドレス
シャトルが来て、端末でpython 3 groupChatを実行する.py