1. 程式人生 > >使用Python實現微信自動回覆

使用Python實現微信自動回覆

1. 獲取其一個圖靈機器人的API

可以從下面這個官網上註冊賬號,獲取圖靈機器人的API.

http://www.tuling123.com/

註冊成功後,我們就可以獲得下面這個api的key了.

2.全部Python程式碼如下:

註釋在程式碼內標註

import itchat
import requests
import re

# 抓取網頁
def getHtmlText(url):
    try:
        r = requests.get(url, timeout=30)
        r.raise_for_status()
        r.encoding = r.apparent_encoding
        return r.text
    except:
        return ""

# 自動回覆
# 封裝好的裝飾器,當接收到的訊息是Text,即文字訊息
@itchat.msg_register(['Text', 'Map', 'Card', 'Note', 'Sharing', 'Picture'])
def text_reply(msg):
    # 當訊息不是由自己發出的時候 我以為 `
    if not msg['FromUserName'] == Name["微信名稱"]:
        # 回覆給好友
        url = "http://www.tuling123.com/openapi/api?key=上一步驟的key值&info="
        url = url + msg['Text']
        html = getHtmlText(url)
        message = re.findall(r'\"text\"\:\".*?\"', html)
        reply = eval(message[0].split(':')[1])
        return reply


if __name__ == '__main__':
    itchat.auto_login()

    # 獲取自己的UserName
    friends = itchat.get_friends(update=True)[0:]
    Name = {}
    Nic = []
    User = []
    for i in range(len(friends)):
        Nic.append(friends[i]["NickName"])
        User.append(friends[i]["UserName"])
    for i in range(len(friends)):
        Name[Nic[i]] = User[i]
    itchat.run()

3.啟動Python類:

這時會彈出一個二維碼,用手機微信掃碼後則開啟了該程式.

4.測試結果:

測試結果如下圖: