本帖最后由 yuqiaobin 于 2020-6-16 21:03 编辑
这想法很久以前就有了,一直没时间做
今天下午花了一小时完成了,不过是把GitHub上的demo和图灵机器人结合一下就可以
想要玩玩的朋友只需要申请图灵机器人的key,以及在代码里面设置要对群发送还是个人发送
网址 http://www.turingapi.com/ 填到python里面对应的内容,一个key可以100条消息,申请四个!!!
注意用python 3.7,和使用压缩包里面的微信版本,有问题可以提出
测试文件下载地址 : https://ws28.cn/f/2scj4fdh7qf
[Python] 纯文本查看 复制代码 # -*- coding: utf-8 -*-
from WechatPCAPI import WechatPCAPI
import time
import logging
from queue import Queue
import threading
import requests
import json
import random
logging.basicConfig(level=logging.INFO)
queue_recved_message = Queue()
key=[]
key.append('**********************') # 图灵key1
key.append('**********************') # 图灵key2
key.append('**********************') # 图灵key3
key.append('**********************') # 图灵key4
def tuling(info): #图灵来了!
appkey=key[random.randint(0, 3)]
url = "http://www.tuling123.com/openapi/api?key="+appkey+"&info="+info
req = requests.get(url)
content = req.text
data = json.loads(content)
answer = data['text']
return answer
def on_message(message):
queue_recved_message.put(message)
# 消息处理示例 仅供参考
def thread_handle_message(wx_inst):
while True:
message = queue_recved_message.get()
print(message)
if 'msg' in message.get('type'):
# 这里是判断收到的是消息 不是别的响应
msg_content = message.get('data', {}).get('msg', '')
msg_tuling = tuling(msg_content)
# msg_wxid = message.get('data', {}).get('from_chatroom_wxid', '') #对群发送
msg_wxid = message.get('data', {}).get('from_wxid', '') #对个人发送
send_or_recv = message.get('data', {}).get('send_or_recv', '')
if send_or_recv[0] == '0':
wx_inst.send_text(msg_wxid, msg_tuling)
def main():
wx_inst = WechatPCAPI(on_message=on_message, log=logging)
wx_inst.start_wechat(block=True)
while not wx_inst.get_myself():
time.sleep(5)
print('登陆成功')
# print(wx_inst.get_myself())
threading.Thread(target=thread_handle_message, args=(wx_inst,)).start()
if __name__ == '__main__':
main()
|