1. 程式人生 > 程式設計 >Python使用20行程式碼實現微信聊天機器人

Python使用20行程式碼實現微信聊天機器人

近來,開啟微信群發訊息,就會秒收到一些活躍分子的回覆,有的時候感覺對方回答很在理,但是有的時候發現對方的回答其實是驢脣不對馬嘴,仔細深究發現,原來對方是機器人。今天,小編就帶大家用20行程式碼,帶你一起打造一個微信聊天機器人,讓你的微信群一直嗨不停~~

首先我們需要安裝一個微信相關的第三方庫,itchat,在Windows上通過命令:pip install itchat,就可以將其安裝。

其二,我們需要去圖靈機器人官網:http://www.tuling123.com,註冊一下,即可獲得一個機器人API。過程很簡單,小夥伴不用擔心,兩分鐘就可以搞定了,在如下的介面進行機器人名稱、應用領域、終端進行設定即可。

Python使用20行程式碼實現微信聊天機器人

建立機器人

之後就會得到一個機器人API,如下圖所示:

Python使用20行程式碼實現微信聊天機器人

機器人API

當然你也可以繫結微訊號、微信公眾號或者扣扣、微博等。其實很多的淘寶店、京東商城也都是這種套路,只不過那些機器人更加“聰明”些,比較是高價買入的,而我們使用的只是免費的版本,但是對於我們本著玩玩的心態來說,已經非常不錯了。

Python使用20行程式碼實現微信聊天機器人

上述準備工作完成之後,我們就要開始寫程式碼了。開啟pycharm,具體程式碼如下圖所示:

import itchat
import requests
def get_response(msg):
apiUrl = 'http://www.tuling123.com/openapi/api'
data = {
'key': '180b4304b4b647d3b1920caf60f',/# Tuling Key,API的值
'info': msg,/# 發出去的訊息
'userid': 'xuebaobao',/# 使用者名稱。隨意設定
}
r = requests.post(apiUrl,data=data).json() /# post請求
return r.get('text')
@itchat.msg_register(itchat.content.TEXT) /# 用於接收來自朋友間的對話訊息
def print_content(msg):
return get_response(msg['Text'])
@itchat.msg_register([itchat.content.TEXT],isGroupChat=True) /# 用於接收群裡面的對話訊息
def print_content(msg):
return get_response(msg['Text'])
itchat.auto_login(hotReload==True) /# 通過微信掃描二維碼登入
itchat.run()

之後右鍵執行程式,爾後會彈出二維碼,之後在手機上進行掃碼授權,讓機器人登入即可。這個過程需要耐心的等待一小會,接下來只要你的微信好友或者微信群發來任何訊息,你都會立馬自動進行回覆,根本停不下來。如果只需要在微信群中回覆的話,那麼只需要把微信好友接收訊息的方法進行註釋即可,同理,微信群也是如此。

Python使用20行程式碼實現微信聊天機器人

圖靈機器人

最後安利一下,itchat.auto_login()方法。這個方法的意思是通過微信掃描二維碼登入。但是這種登入的方式確實短時間的登入,並不會保留登入的狀態,也就是下次登入時還是需要掃描二維碼,如果加上hotReload==True的話,那麼就會保留登入的狀態,至少在後面的幾次登入過程中不會再次掃描二維碼,該引數生成一個靜態檔案itchat.pkl,和實現機器人這個程式碼在同一個目錄下,其作用是用於儲存登入狀態。

Python使用20行程式碼實現微信聊天機器人

機器人聊天圖

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。