欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2021年11月15日 15:51:12   作者:編程簡單學(xué)  
事情是這樣的,最近認識的一位小姐姐有每天早晨看天氣預(yù)報的習(xí)慣。在我看來,很多人起床第一件事情就是看微信消息,既然這樣,我就勉為其難每天早晨給小姐姐發(fā)送一則天氣預(yù)報吧

前言

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

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

任務(wù)分解

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

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

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

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

2.安裝 wxpy 庫

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

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

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

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

通過昵稱獲取指定微信好友

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

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

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

img

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

webkit2jpg

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

brew install webkit2png
復(fù)制代碼

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

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

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

img

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

img

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

img

來試試看通過選擇器進行網(wǎng)頁截圖,在命令行輸入如下指令,可以看到對應(yīng)的網(wǎng)頁截圖

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

img

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

萬事俱備,只欠東風(fēng),我們來設(shè)定一個定時的 job,這邊我是用的是 BlockingScheduler 庫,非常簡單易用

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

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

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

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

相關(guān)文章

  • Python中for循環(huán)可迭代對象迭代器及生成器源碼學(xué)習(xí)

    Python中for循環(huán)可迭代對象迭代器及生成器源碼學(xué)習(xí)

    這篇文章主要為大家介紹了Python中for循環(huán)可迭代對象迭代器及生成器的源碼學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • python中的條件賦值判斷語句語法

    python中的條件賦值判斷語句語法

    這篇文章主要介紹了python條件賦值判斷語句語法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • python遺傳算法之geatpy的深入理解

    python遺傳算法之geatpy的深入理解

    本文主要介紹了python遺傳算法之geatpy的深入理解,主要從geatpy中的各種數(shù)據(jù)結(jié)構(gòu)一步一步進行學(xué)習(xí),具有一定的參考價值,感興趣的可以了解一下
    2022-04-04
  • 基于Python PaddleSpeech實現(xiàn)語音文字處理

    基于Python PaddleSpeech實現(xiàn)語音文字處理

    PaddleSpeech基于飛槳PaddlePaddle的語音方向的開源模型庫,用于語音和音頻中的各種關(guān)鍵任務(wù)的開發(fā),包含大量基于深度學(xué)習(xí)前沿和有影響力的模型。本文將介紹如何通過PaddleSpeech實現(xiàn)語音文字處理,感興趣的可以學(xué)習(xí)一下
    2022-01-01
  • Python中的列表知識點匯總

    Python中的列表知識點匯總

    這篇文章主要總結(jié)了一些Python中的列表的知識點,來自于IBM官網(wǎng)技術(shù)文檔,需要的朋友可以參考下
    2015-04-04
  • Pytorch中的數(shù)據(jù)集劃分&正則化方法

    Pytorch中的數(shù)據(jù)集劃分&正則化方法

    這篇文章主要介紹了Pytorch中的數(shù)據(jù)集劃分&正則化方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python xlwt如何設(shè)置單元格的自定義背景顏色

    python xlwt如何設(shè)置單元格的自定義背景顏色

    這篇文章主要介紹了python xlwt如何設(shè)置單元格的自定義背景顏色,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • 分析python并發(fā)網(wǎng)絡(luò)通信模型

    分析python并發(fā)網(wǎng)絡(luò)通信模型

    隨著互聯(lián)網(wǎng)和物聯(lián)網(wǎng)的高速發(fā)展,使用網(wǎng)絡(luò)的人數(shù)和電子設(shè)備的數(shù)量急劇增長,其也對互聯(lián)網(wǎng)后臺服務(wù)程序提出了更高的性能和并發(fā)要求。本文主要分析比較了一些模型的優(yōu)缺點,并且用python來實現(xiàn)
    2021-06-06
  • python實現(xiàn)人機猜拳小游戲

    python實現(xiàn)人機猜拳小游戲

    這篇文章主要為大家詳細介紹了python實現(xiàn)人機猜拳小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • Python利用psutil獲取CPU與內(nèi)存等硬件信息

    Python利用psutil獲取CPU與內(nèi)存等硬件信息

    psutil是Python的一個第三方庫,提供了各種強大的硬件信息查閱功能,這篇文章主要為大家介紹了如何利用psutil獲取CPU與內(nèi)存等硬件信息,需要的可以參考一下
    2023-07-07

最新評論