發布時間:2022-07-19 人氣:311
這次分享主要是構建微信機器人的接入,以及相關的資料整理,主要內容包括:
快速構建微信機器人
wxpy包介紹
圖靈機器人介紹
為電話機器人源碼開源了說明代碼有多簡單,先上代碼,不含注釋一共六行電話機器人源碼開源:
備注:代碼中的api我做了修改處理,請輸入你在圖靈機器人中獲取的apikey
fromwxpy import
*## 在電腦上登錄網頁版版微信
bot =Bot()
#apikey,在此處輸入圖靈機器人的key
tuling =Tuling(api_key='7e41a9c26dde4xxxxxxxxxxxxxxxxxxxxx')
#自動回復
@bot.register()
defreply_all(msg):tuling.do_reply(msg)
把以上代碼放到python中運行,即可完成機器人的搭建。
實際上,機器人的搭建,主要依賴于python中的wxoy包以及圖靈機器人的api,因此你想更深入地研究一些內容,建議你進一步閱讀下面的兩個相關知識。
1.wxpy包:可能是最優雅的微信個人號 API
wxpy包是一個允許在python中操作微信的工具包,它在ichat的基礎上通過大量的借口提升了易用性。以下是wxpy的一些常見場景(摘自官方文檔):
控制路由器、智能家居等具有開放接口的玩意兒
運行腳本時自動把日志發送到你的微信
加群主為好友,自動拉進群中
跨號或跨群轉發消息
自動陪人聊天
逗人玩
...
簡單來說,可用來實現各種微信個人號的自動化操作,接下里介紹一些常用的操作:
安裝wxpy
wxpy支持python2.7,3.4-3.6版本
pip install -U wxpy
登錄微信
wxpy支持python2.7,3.4-3.6版本
fromwxpy import*
## 在電腦上登錄網頁版版微信
bot =Bot()
啟用緩存,能夠自動登錄
## 在電腦上登錄網頁版版微信,并啟用緩存實現自動登錄
bot =Bot(cache_path=True)
查詢統計
#獲取所有聊天對象
bot.chats()
#獲取所有好友
bot.friends()
#獲取所有群聊
bot.groups()
結果
[<Friend:浩彬老撕機器人2>,<Friend:于xx>,<Friend:Cxx>,<Friend:xxx>,<Friend:Pxx>,<Friend:浩彬老撕>,<Friend:PAxx>,<Group:機器人們>,<MP:探數尋理>]
bot.friends()[0].wxid
#結果
2635636115
#獲取微信頭像,并保存在本地
bot.friends()[0].get_avatar(save_path='d:/jupyter/wxpy/photo.jpg')
#統計
friends =bot.friends()
print(friends.stats_text())
結果
浩彬老撕機器人2共有 5位微信好友男性:3(60.0%)女性:2(40.0%)TOP 10省份廣東:5(100.00%)TOP 10城市廣州:5(100.00%)
發送消息
#在好友中找到名字包括“浩彬”,性別是男的廣州好友
my_friend =bot.friends().search('浩彬',sex=MALE,city='廣州')[1]
#send:動態發送不同類型消息,默認為本文
#send_image:發送圖片
my_friend.send('你在嗎')
my_friend.send_image('d:/jupyter/wxpy/lovely.jpg')
聊天機器人
專屬你的某人的聊天機器人
備注:代碼中的api我做了修改處理,請輸入你在圖靈機器人中獲取的apikey
fromwxpy import*
bot =Bot(cache_path=True)## 在電腦上登錄網頁版版微信,并啟用緩存
# 搜索好友,并指定。bot.friends().search的搜索結果是一個列表,所以記得指定元素[]
my_friend =bot.friends().search('浩彬老撕')[1]
#apikey,在此處輸入圖靈機器人的key
tuling =Tuling(api_key='7e41a9c26dde4xxxxxxxxxxxxxxxxxxxxx')
#wxpy中通過預先注冊方式實現消息自動處理#預先注冊是指預先將特定聊天對象的特定類型消息,注冊到對應的處理函數,以實現自動回復等功能。
@bot.register(my_friend) #預先注冊
defreply_my_friend(msg):
tuling.do_reply(msg)
print(msg)
#wxpy的embed() 可在堵塞線程的同時,進入 Python 命令行,方便調試,一舉兩得。
embed() #堵塞進程,在jupyter中可以刪掉此行
所有人自動回復
備注:代碼中的api我做了修改處理,請輸入你在圖靈機器人中獲取的apikey
fromwxpy import*
## 在電腦上登錄網頁版版微信
bot =Bot()
#apikey,在此處輸入圖靈機器人的key
tuling =Tuling(api_key='7e41a9c26dde4xxxxxxxxxxxxxxxxxxxxx')
#自動回復
@bot.register()
defreply_all(msg):
tuling.do_reply(msg)
print(msg)embed() #堵塞進程,在jupyter中可以刪掉此行
備注:請慎重使用全部自動回復,該功能也實現對群聊消息的自動回復,一個不小心很容易會被踢出群~
2.API圖靈:簡單易用的 機器人API
圖靈機器人提供的API比較方便,只需要注冊就能獲得免費的API,基本能夠滿足測試所需要的。在機器人管理界面,即能創建新的機器人。
選擇,設置,可以進一步完成機器人的設定。機器人提供多個知識庫,同時也能自定義設定回復內容
同時提供多個擴展功能,滿足需要
本文鏈接:http://www.431pmh.cn/hangyeyedongtai/dian-hua-ji-qi-ren-yuan-ma-kai-yuan(-zhi-neng-ji-qi-ren-yuan-ma-ou4.html
熱線電話
18594279421
上班時間
周一到周五
公司電話
18594279421