/1 前言/
在家閑著,做個小項目,基于Python,實現(xiàn)一個語聊小機器人,分享給大家。項目整體比較簡單,官方文檔介紹的非常詳細,可快速上手。
/2 目標(biāo)/
將圖靈機器人放到桌面,實現(xiàn)工作助手/陪聊功能。
/3 涉及的庫/
V1.0版本:requests、json
V2.0版本:requests、json、selenium(實現(xiàn)功能:如圖靈返回結(jié)果為url,則自動打開網(wǎng)頁)
/4 具體實現(xiàn)/
1.創(chuàng)建圖靈機器人
圖靈機器人的創(chuàng)建在網(wǎng)上有很多方法,因創(chuàng)建圖靈機器人非常簡單且與Python無關(guān),此處不贅述。
注意:創(chuàng)建機器人后需要認證才能享受每天100條的免費回復(fù)。
2.網(wǎng)上有很多API接入教程,如果想隨便玩玩的話,用小編的代碼就可以了,想實現(xiàn)更多,可以看看API文檔。
3.認證成功后找到最關(guān)鍵的apiKey參數(shù)。
4.開始寫代碼了--V1.0版本
首先引入需要的庫
import requests
import json
from selenium import webdriver
url為官方文檔中指定url
url = 'http://openapi.tuling123.com/openapi/api/v2'
添加請求頭
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'}
以下為輸入內(nèi)容,參考官方文檔格式;
while True:
aa = input('我:')
data ={
"perception": {
"inputText": {
"text": aa
},
"selfInfo": {
"location": {
"city": "濟南"}
}
},
"userInfo": {
"apiKey": "寫自己的APIKEY",
"userId": "隨便寫幾個數(shù)字和字母"
}
}
whiletrue使聊天無限循環(huán);
變量aa(隨便起的)通過input()輸入信息,會傳入變量“text”中;
“city”填入你所在的城市,可修改為你所在的城市,可以詳細到“street”;
userInfo為個人信息,apiKey填寫你設(shè)置好的機器人的apiKey,userId實測可以隨便寫,比如'123456’。
res = requests.post(url,headers=headers,data=json.dumps(data))
以上為解析數(shù)據(jù),將字典格式的data變量轉(zhuǎn)換為合法的json字符串傳給post的data參數(shù)。
try:
print('機器人:'+res.json()['results'][0]['values']['text'])
if aa == '退出':
break
except:
print('機器人:'+res.json()['results'][0]['values']['url'])
以上為輸出數(shù)據(jù)。
如果返回值不是'text’,則返回'url’;
如果回復(fù)“退出”,則退出循環(huán)。
以上為全部代碼。
以上為V1.0效果圖,可實現(xiàn)查天氣、查列車班次、查快遞、查酒店、查菜譜、繞口令等功能。
5.V2.0版本
首先安裝selenium庫,下載好谷歌瀏覽器。
將chromedriver文件放到Python安裝文件下,chromedriver文件可在文末進行獲取下載方式。
引入相關(guān)庫
import requests
import json
from selenium import webdriver
2.0相比1.0僅需添加最后三行代碼,三行代碼分別是獲取url,打開瀏覽器,用瀏覽器打開該url,非常簡單是不是!
except:
print('機器人:' + res.json()['results'][0]['values']['url'])
url_1 =res.json()['results'][0]['values']['url']
driver = webdriver.Chrome()
driver.get(url_1)
以上是效果展示,非常方便是不是!
最后打包成.exe文件(cmd運行 pyinstaller -F 代碼源文件的絕對路徑)放到桌面,或者分享給TA!
從此不管風(fēng)雨,永遠有可愛的圖靈機器人陪著你(你的TA)!
/5 總結(jié)/
1.項目整體比較簡單,官方文檔介紹的非常詳細,可快速上手;
2.Webdriver非常實用,很多反爬做的比較好的網(wǎng)站可以用此庫破解;
3.官方還提供更多功能等著你去體驗
實測微信個人號接入功能,通過微信調(diào)用圖靈機器人更加方便,但是官方提供的兩個三方程序一個收費一個需要掛機。
4.最后感謝圖靈機器人,讓我們普通人有免費渠道體驗AI,體驗科技帶給人類生活的便捷!