人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

python實(shí)現(xiàn)AI聊天機(jī)器人詳解流程

發(fā)布日期:2021-12-10 22:22 | 文章來(lái)源:源碼中國(guó)

開(kāi)始幾天,我是使用很原始的方法,自己去獲取天氣預(yù)報(bào)截圖,再手動(dòng)發(fā)送給小姐姐。連續(xù)幾天之后我一想:不對(duì)呀,我怎么說(shuō)也是一個(gè)程序猿,怎么能用這么 low 的方式呢。

聯(lián)想起之前看到的一個(gè)開(kāi)源 python 庫(kù)—— wxpy,一個(gè)非常強(qiáng)大的微信 api 調(diào)用類庫(kù),正好滿足我當(dāng)前的需要,那話不多說(shuō),開(kāi)干。

任務(wù)分解

  • 調(diào)用微信 api 發(fā)送簡(jiǎn)單消息
  • 獲取當(dāng)日天氣預(yù)報(bào)截圖信息
  • 設(shè)置定時(shí)任務(wù)

調(diào)用微信 api 發(fā)送簡(jiǎn)單消息

本程序主要是通過(guò) wxpy 庫(kù)使用的,參考其官網(wǎng)文檔,我們需要做如下準(zhǔn)備工作:

1.Python 環(huán)境(本人使用的是 mac 自帶的 python2.7)

2.安裝 wxpy 庫(kù)

pip install -U wxpy -i "https://pypi.doubanio.com/simple/"(國(guó)內(nèi)用戶使用豆瓣的源)
復(fù)制代碼

獲取聊天對(duì)象,發(fā)送消息

我們先試著獲取文件傳輸助手,拿它練練手

from wxpy import *# 初始化一個(gè)機(jī)器人對(duì)象bot = Bot()# 獲取文件傳輸助手file_helper = bot.file_helper# 向文件傳輸助手發(fā)送消息file_helper.send('Hello')
復(fù)制代碼

通過(guò)昵稱獲取指定微信好友

# 獲取昵稱為 『志明』,這邊的昵稱指你給的好友備注friend = bot.friends().search('志明')friend.send(u'Hello 志明') #在字符前面加上 u 為了避免編碼轉(zhuǎn)換的異常,因?yàn)榇嬖谥形?br/>復(fù)制代碼

獲取當(dāng)日天氣預(yù)報(bào)截圖信息

國(guó)內(nèi)天氣網(wǎng)的 api 很多,我找了一個(gè)簡(jiǎn)單易用的天氣查詢網(wǎng)站——中國(guó)天氣

我的需求是把網(wǎng)頁(yè)中紅框圈起來(lái)的內(nèi)容截取,轉(zhuǎn)化成圖片,一搜索還真的找個(gè)這么一個(gè)神器——webkit2jpg,官網(wǎng)地址

webkit2jpg

這是 linux 環(huán)境下,能夠把網(wǎng)頁(yè)內(nèi)容轉(zhuǎn)成圖片的命令行工具,mac 可以直接通過(guò) brew 安裝

brew install webkit2png
復(fù)制代碼

拿 google 主頁(yè)練練手,在命令行輸入如下命令,這邊有個(gè)小問(wèn)題,webkit2jpg 默認(rèn)必須使用 https 的鏈接,需要手動(dòng)修改一下 webkit2jpg 的程序,可以參考鏈接 參考鏈接

webkit2png http://www.google.com/
復(fù)制代碼

可以在當(dāng)前執(zhí)行命令行的目錄當(dāng)中發(fā)現(xiàn) google 主頁(yè)圖片

那我想要截取頁(yè)面的某個(gè)部分轉(zhuǎn)換成圖片呢,webkit2jpg 完全 ok,查看使用文檔之后發(fā)現(xiàn)它是可以傳入 CSS選擇器參數(shù)

通過(guò) chrome 瀏覽器的調(diào)試工具,可以很容易的找到指定區(qū)域的網(wǎng)頁(yè)元素所對(duì)應(yīng)的選擇器

來(lái)試試看通過(guò)選擇器進(jìn)行網(wǎng)頁(yè)截圖,在命令行輸入如下指令,可以看到對(duì)應(yīng)的網(wǎng)頁(yè)截圖

webkit2png --ignore-ssl-check --selector=#today http://www.weather.com.cn/weather1d/101020100.shtml\#search
復(fù)制代碼

設(shè)置定時(shí)任務(wù)

萬(wàn)事俱備,只欠東風(fēng),我們來(lái)設(shè)定一個(gè)定時(shí)的 job,這邊我是用的是 BlockingScheduler 庫(kù),非常簡(jiǎn)單易用

if __name__ == '__main__': from apscheduler.schedulers.blocking import BlockingScheduler sched = BlockingScheduler()
# 設(shè)置?;?job,這個(gè) job 每 10 秒給我自己發(fā)送一條消息 # 讓微信機(jī)器人長(zhǎng)期處于一個(gè)在線的狀態(tài) sched.add_job(keep_online, 'interval', seconds=10) # 設(shè)置定時(shí)發(fā)送天氣預(yù)報(bào)的任務(wù),通過(guò) cron 表達(dá)式,指定發(fā)送周期為周一至周五每天早上 6:30 sched.add_job(weather_notification, 'cron', day_of_week='1-5', hour=6, minute=30) sched.start()
復(fù)制代碼

這邊有個(gè)小技巧,由于首次啟動(dòng)微信聊天機(jī)器人需要掃碼登錄,因此 wxpy 提供了緩存功能,意味著可以讓微信保持長(zhǎng)期在線,不用重復(fù)掃碼登錄

# 實(shí)例化機(jī)器人對(duì)象時(shí),指定 cache_path 參數(shù)啟動(dòng)緩存功能,qr_path 則是二維碼路徑bot = Bot(console_qr=2, cache_path=True, qr_path='wepy.pkl')

到此這篇關(guān)于python實(shí)現(xiàn)AI聊天機(jī)器人詳解流程的文章就介紹到這了,更多相關(guān)Python 聊天機(jī)器人內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!

版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開(kāi)通

自選配置、實(shí)時(shí)開(kāi)通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問(wèn)服務(wù)

1對(duì)1客戶咨詢顧問(wèn)

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部