微信智能自动回复—itchat

1.导入itchat等模块
import itchat
import requests
import re
import time
import random
2.从网页抓取用于回复的内容
def getHtmlText(url):
    try:
        r = requests.get(url, timeout=30)
        r.raise_for_status()
        r.encoding = r.apparent_encoding
        return r.text
    except:
        return ""
3.编辑回复的内容
@itchat.msg_register(['Text', 'Map', 'Card', 'Note', 'Sharing', 'Picture'])
def text_reply(msg):
    if msg['FromUserName'] in UserName:
        key='0b986b0f69104275a244e9cddac224e1' # 可以自己去http://www.tuling123.com申请
        url = "http://www.tuling123.com/openapi/api?key="+key+"&info="
        url = url + str(msg['Text'])
        html = getHtmlText(url)
        message = re.findall(r'\"text\"\:\".*?\"', html) # 回复的内容
        reply = eval(message[0].split(':')[1])
        robots = ['.r','.wdy'] #供随机选一个作为回复的结尾
        reply = reply + random.choice(robots)
        time.sleep(1) # 等1秒再回复
        return reply
4.设置回复对象
if __name__ == '__main__':
    itchat.auto_login() # 会弹出微信网页登录的二维码
    myUserName = itchat.get_friends(update=True) # 微信好友名list
    le = len(myUserName)
    k = k0 = 0
    for i in range(0, le):
        if myUserName[i]['RemarkName'] == 'WLL': # 备注是WLL的好友
            k0 = i
    UserName = [itchat.get_friends(update=True)[k0]["UserName"],
                itchat.get_friends(update=True)[k]["UserName"]] # 0表示自己,可以跟自己聊聊
    itchat.run()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容