点击上方“萝卜大杂烩”,选择“星标”公众号
超级无敌干货,第一时间送达!!!
前言
创建机器人
进入图灵机器人官网http://www.tuling123.com/,戳进帮助中心。
注册用户
创建机器人
然后在机器人管理界面,创建图灵机器人,最多可以创建5个,由此得出对应的5个apikey。(实际上一个就够了),apikey是针对接口访问的授权方式。
完成代码
创建一个储存图片的文件来回复拍一拍消息和代码放在同一个文件夹
完成代码
from
PyWeChatSpy
import
WeChatSpy
import
random
import
re
import
json
import
requests
import
time
userid = str(
1
)
# 1 可以替换成任何长度小于32的字符串哦
apikey = str(
''
)
# 这里的A,记得替换成你自己的apikey~
# def robot(content):#调用机器人
# # 图灵api
# api = r'http://openapi.tuling123.com/openapi/api/v2'
# # 创建post提交的数据
# data = {
# "perception": {
# "inputText": {
# "text": content
# }
# },
# "userInfo": {
# "apiKey": apikey,
# "userId": userid,
# }
# }
# # 转化为json格式
# jsondata = json.dumps(data)
# # 发起post请求
# response = requests.post(api, data = jsondata)
# # 将返回的json数据解码
# robot_res = json.loads(response.content)
# # 提取对话数据
# print(robot_res["results"][0]['values']['text'])
def
my_parser
(data)
:
if
data[
"type"
] ==
5
:
# 判断是微信消息数据
for
msg
in
data[
"data"
]:
if
(msg[
"self"
] ==
0
):
# 遍历微信消息
if
msg[
"msg_type"
] ==
10000
:
# 判断是微信拍一拍系统提示
m = re.search(
'.*?拍了拍我。'
, msg[
"content"
])
if
m:
# 判断为拍一拍
image_path =
f"E:/images/
{random.randint(
1
,
4
)}
.jpg"
# 随机选一张回复用的图片
itchat.send_file(msg[
"wxid1"
], image_path)
itchat.send_text(msg[
"wxid1"
],
"我可能在学习吧(自动回复)"
)
elif
msg[
"msg_type"
] ==
1
:
#判断为文本消息
if
(re.search(
'.*?@chatroom'
,msg[
"wxid1"
])==
None
):
#判断不是群消息
m = re.search(
'在吗'
, msg[
"content"
])
if
m:
itchat.send_text(msg[
"wxid1"
],
"我是机器人恒利,有事请留言。"
,)
# print(msg["msg_type"])
# print(msg["self"])
# print(msg["wxid1"])
# print(data["pid"])
else
:
api =
r'http://openapi.tuling123.com/openapi/api/v2'
# 创建post提交的数据
data = {
"perception"
: {
"inputText"
: {
"text"
: msg[
"content"
]
}
},
"userInfo"
: {
"apiKey"
: apikey,
"userId"
: userid,
}
}
# 转化为json格式
jsondata = json.dumps(data)
# 发起post请求
response = requests.post(api, data=jsondata)
# 将返回的json数据解码
robot_res = json.loads(response.content)
# 提取对话数据
print(robot_res[
"results"
][
0
][
'values'
][
'text'
])
#content = msg["content"]
# 输入对话内容
#robot(content)
itchat.send_text(msg[
"wxid1"
],
'['
+robot_res[
"results"
][
0
][
'values'
][
'text'
] +
'(自动回复)]'
)
itchat = WeChatSpy(parser=my_parser)
# 实例化WeChatSpy类
if
__name__ ==
'__main__'
:
itchat.run()
# 运行代码
效果展示
原文始发于微信公众号(萝卜大杂烩):Python制作微信自动回复机器人,打游戏时自动回复女朋友消息
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论