1. 程式人生 > >基於wxpy的微信機器人來通知測試異常的例子

基於wxpy的微信機器人來通知測試異常的例子

本人在學習使用wzpy的過程中,因為測試框架是java的,所以採用了檔案來進行兩個程式之間的通訊。思路如下:首先測試異常會儲存在一個資料夾下,以log形式儲存,然後寫一個wxpy的機器人,定時去掃描這個資料夾,如果發現了log,就及時通知到一個微信群裡,(後期根據log中的等級不同,分別通知不同的人和群)。

下面分享一下機器人的程式碼:

bot = Bot(cache_path=True)
times = 0
wx = "/Users/Vicky/Documents/workspace/fission/long/wx/"
while (True):
    file = os.listdir(wx)
    for f in file:
        if os.path.exists(wx + f):
            if f.startswith("."):  # 排除隱藏系統檔案,針對Mac
                continue
            times = 0
            with open(wx + f) as msg:  # 讀取資訊檔案
                n = ""
                for i in msg:
                    i = i.strip("\n")
                    n = n + i
            test = bot.groups()[0]
            test.send(n.decode("utf-8"))
            os.remove(wx + f)
        time.sleep(2)#傳送訊息間隔,防止被封
    times += 1
    if (times > 10):#防止微信機器人自動下線
        friend = bot.friends().search(u"點點橫點塵")[0]
        friend.send(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
        times = 0
    print times
    time.sleep(30)#掃描間隔,防止被封

本人持續執行24小時,這個例子用了快取模式,短時間內掉線重登是可以不用驗證的,暫時看來是比較穩定可用的。

有興趣的同學可以加QQ群交流一下:群號:340964272