微信已经成为我们日常生活中不可或缺的工具。想象一下,如果你有一个私人微信机器人,可以帮你处理消息、提醒事项,甚至自动回复,是不是非常方便?今天,我们就用wxpy库来实现一个简单的微信机器人。
安装wxpy
在开始之前,确保你已经安装了 wxpy 库。使用以下命令进行安装:
pip install wxpy
同时需要安装itchat-uos作为依赖库:
pip install itchat-uos
快速上手:创建一个简单的微信机器人
以下代码展示了如何初始化机器人并实现简单的消息自动回复功能:
from wxpy import Bot
# 初始化机器人,使用缓存避免重复扫码
bot = Bot(cache_path=True)
# 自动回复所有收到的消息
@bot.register()
def auto_reply(msg):
return f"你刚才说:{msg.text}"
# 让机器人保持运行
bot.join()
效果:机器人会复读你发送给它的任何消息。
功能一:指定好友的自动回复
有时候,我们只希望对特定好友进行自动回复。以下是实现方法:
# 查找特定好友
friend = bot.friends().search("好友昵称")[0]
# 对好友的消息进行自动回复
@bot.register(friend)
def reply_friend(msg):
return f"Hello, {friend.name}! 收到你的消息啦~"
效果:只有特定好友发消息时,机器人会自动回复。
功能二:群聊消息监控与回复
除了好友聊天,我们也可以对群聊消息进行监控,并实现自动回复功能。
# 查找特定群聊
group = bot.groups().search("群聊名称")[0]
# 对群聊消息进行监控
@bot.register(group)
def reply_group(msg):
if "机器人" in msg.text:
return f"{msg.member.name},你找我有什么事吗?"
效果:当群聊中包含“机器人”字样时,机器人会主动回复。
功能三:发送定时提醒
用 wxpy 可以轻松实现每日提醒功能,比如定时发送问候消息。
import schedule
import time
def send_daily_reminder():
friend = bot.friends().search("好友昵称")[0]
friend.send("早安!新的一天开始了,加油!")
# 设置每日提醒时间
schedule.every().day.at("08:00").do(send_daily_reminder)
# 持续运行任务调度
while True:
schedule.run_pending()
time.sleep(1)
效果:每天早上 8 点,机器人会自动给指定好友发送早安提醒。
🧠 功能四:接入图灵机器人实现智能对话
通过接入图灵机器人 API,可以让微信机器人拥有智能聊天功能。
注册图灵机器人 API
访问 图灵机器人官网。
注册账号并获取 API Key。
实现代码
import requests
# 图灵机器人 API 配置
TULING_API_KEY = "你的图灵机器人API Key"
def tuling_reply(msg):
url = "http://openapi.tuling123.com/openapi/api/v2"
data = {
"reqType": 0,
"perception": {
"inputText": {
"text": msg.text
}
},
"userInfo": {
"apiKey": TULING_API_KEY,
"userId": "wxpy_bot"
}
}
response = requests.post(url, json=data)
result = response.json()
return result["results"][0]["values"]["text"]
@bot.register()
def auto_reply(msg):
return tuling_reply(msg)
效果:机器人会根据图灵机器人返回的结果,智能回复消息。
扩展功能:更多玩法
文件传输助手:将机器人绑定到文件传输助手,用于跨设备消息提醒。
监控关键词:当群聊中出现指定关键词时,触发特定动作(比如警报)。
定制化指令:为机器人设置指令,比如“天气”、“新闻”等功能。
注意事项
扫码登录问题:确保运行环境中微信未被禁用,wxpy 依赖网页版微信。
隐私保护:在开发和使用过程中,避免存储或传播敏感数据。
总结
通过 wxpy,我们可以轻松打造一个功能强大的私人微信机器人。无论是自动回复、定时提醒,还是智能对话,wxpy 都可以满足你的需求。接下来,可以尝试添加更多有趣的功能,让你的机器人更智能、更贴心!
领取专属 10元无门槛券
私享最新 技术干货