Python-微信訊息自動回覆機器人
阿新 • • 發佈:2018-12-20
之前寫過一篇python-requests獲取好友列表的文章,簡直花費了好多的時間和精力,又抓包,又找引數,又分析的,簡直麻煩透頂,今天突然知道了另外一種捷徑,幾行程式碼就可以完成… #itchat
from . import content from .core import Core from .config import VERSION from .log import set_logging __version__ = VERSION instanceList = [] def new_instance(): newInstance = Core() instanceList.append(newInstance) return newInstance originInstance = new_instance() # I really want to use sys.modules[__name__] = originInstance # but it makes auto-fill a real mess, so forgive me for my following ** # actually it toke me less than 30 seconds, god bless Uganda # components.login login = originInstance.login get_QRuuid = originInstance.get_QRuuid get_QR = originInstance.get_QR check_login = originInstance.check_login web_init = originInstance.web_init show_mobile_login = originInstance.show_mobile_login start_receiving = originInstance.start_receiving get_msg = originInstance.get_msg logout = originInstance.logout # components.contact update_chatroom = originInstance.update_chatroom update_friend = originInstance.update_friend get_contact = originInstance.get_contact get_friends = originInstance.get_friends get_chatrooms = originInstance.get_chatrooms get_mps = originInstance.get_mps set_alias = originInstance.set_alias set_pinned = originInstance.set_pinned add_friend = originInstance.add_friend get_head_img = originInstance.get_head_img create_chatroom = originInstance.create_chatroom set_chatroom_name = originInstance.set_chatroom_name delete_member_from_chatroom = originInstance.delete_member_from_chatroom add_member_into_chatroom = originInstance.add_member_into_chatroom # components.messages send_raw_msg = originInstance.send_raw_msg send_msg = originInstance.send_msg upload_file = originInstance.upload_file send_file = originInstance.send_file send_image = originInstance.send_image send_video = originInstance.send_video send = originInstance.send revoke = originInstance.revoke # components.hotreload dump_login_status = originInstance.dump_login_status load_login_status = originInstance.load_login_status # components.register auto_login = originInstance.auto_login configured_reply = originInstance.configured_reply msg_register = originInstance.msg_register run = originInstance.run # other functions search_friends = originInstance.search_friends search_chatrooms = originInstance.search_chatrooms search_mps = originInstance.search_mps set_logging = set_logging
#圖靈機器人
-
註冊個賬號 然後建立個自己的機器人(忽略我已經建立過了的)
-
建立成功後 會生成一個apikey
-
幫助文件
-
傳送3個引數 1.key : apikey 2.info :傳送的訊息 3.userid : ‘robot’
-
具體我也不知道怎麼解釋哈哈哈 ,也是參考別人的文章
-
上程式碼
# -*- coding: utf-8 -*- import itchat import requests #微信登入 #第一次登入要掃碼,之後不需要,但是有時效 itchat.auto_login(hotReload=True) #圖靈機器人API apiurl = 'http://www.tuling123.com/openapi/api' def get_info(msg): ''' 給圖靈機器人發訊息,獲取回覆並返回 :param msg: :return: ''' data = { 'key':'bd542e4b6f654555af7bd29d78dad898', 'info': msg, 'userid': 'robot', } reply_msg = requests.post(apiurl, data=data).json() print('我的回覆:%s'%reply_msg) return reply_msg['text'] @itchat.msg_register(itchat.content.TEXT) def auto_reply(msg): #搜尋微信好友 realFriend = itchat.search_friends(name='老李') realFriendsName = realFriend[0]['UserName'] print(realFriend) print(realFriendsName) #列印好友回覆的資訊 print('收到訊息:%s'%msg['Text']) #呼叫圖靈介面 reply = get_info(msg['Text']) #設定指定人物 if msg['FromUserName'] == realFriendsName: itchat.send(reply, toUserName=realFriendsName) itchat.run()
#總結: 1.長知識了啊哈哈哈哈哈 2.還有待研究