Python腳本結(jié)合WPS多維表實(shí)現(xiàn)推送每日英語(yǔ)功能
一、問(wèn)題的提出
平時(shí)英語(yǔ)教學(xué)過(guò)程中,經(jīng)常通過(guò)公眾號(hào)給學(xué)生發(fā)送英語(yǔ)每日一句,讓學(xué)生每天都可以學(xué)習(xí)地道的英漢雙語(yǔ)句子,幫助學(xué)生鞏固英語(yǔ)語(yǔ)法,提升詞匯量,從而為四六級(jí)考試打好基礎(chǔ)。
到了假期,還想給學(xué)生繼續(xù)“加餐”,就想到每天發(fā)送二句英中對(duì)照的句子。為了實(shí)現(xiàn)自動(dòng)化的操作,我通過(guò)WPS的多維表,設(shè)置自動(dòng)化流程,調(diào)用Python代碼,每天定時(shí)在多維表中新增記錄,分別從網(wǎng)上下載最新的每日英語(yǔ),然后通過(guò)webhook地址,把信息發(fā)送到企業(yè)微信群中。這樣,學(xué)生每天都可以學(xué)習(xí)到最新的英語(yǔ)句子了。
二、實(shí)現(xiàn)過(guò)程
2.1新建消息推送機(jī)器人
用電腦打開企業(yè)微信群,點(diǎn)擊右上角的三個(gè)點(diǎn),選擇【消息推送】,再點(diǎn)擊【添加】可以添加微信機(jī)器人。

添加消息推送助手
再選擇【自定義消息推送】, 設(shè)置一個(gè)推送機(jī)器人圖標(biāo)、名稱和簡(jiǎn)介,并記下它的webhook地址備用。

添加企業(yè)微信推送機(jī)器人
最終的推送機(jī)器人配置如下。如果想讓所有學(xué)生接收信息,可以把這個(gè)機(jī)器人添加到學(xué)生企業(yè)微信群中,這樣每天就可以看到發(fā)送的信息了。

2.2 新建多維表
打開http://docs.wps.cn,新建多維表格,將其重命名為【每日2句推送】,并設(shè)置日期和文本兩個(gè)字段。

新建多維表格
2.3 添加Python代碼
在設(shè)置自動(dòng)化流程之前,先設(shè)置腳本,點(diǎn)擊多維表右上角的【腳本】——【PY腳本】——【新建腳本】把下面的Python代碼放入其中,并把腳本命名為:【每日一句發(fā)送】。這段代碼利用了WPS多維表自帶的爬蟲功能,調(diào)用requests, BeautifulSoup等模塊,從網(wǎng)上獲取英語(yǔ)每日一句,并寫入到多維表中。由于我們這里是兩個(gè)平臺(tái)的句子,所以最后得到的是兩個(gè)英文句子及其翻譯。
import requests,time
from bs4 import BeautifulSoup
rec_id = Context['argv']['rec_id'][0]
# 獲取jinshan雙語(yǔ)句子
def jinshan():
url = 'http://open.iciba.com/dsapi/'
res = requests.get(url)
content = res.json()['content'] + res.json()['note']
return content
# 獲取haici的每日句子
def haici():
url2 = r"http://dict.cn"
resp = requests.get(url2)
soup = BeautifulSoup(resp.text, "html.parser")
htm = soup.find("div", class_="daily_sentence")
sen = htm.text.strip().split("\t\t\t")[2] # 根據(jù)實(shí)際情況拆分句子
return sen
#寫入到多維表中
def write_sen():
url = jinshan() + "\n" +haici()
if url:
# 構(gòu)建數(shù)據(jù)記錄 - 使用字段名作為鍵
record_data = {"_rid":rec_id,"文本":url}
# 更新當(dāng)前記錄
update_dbt(data=record_data, sheet_name='數(shù)據(jù)表')
time.sleep(1) # 每個(gè)記錄處理完后等待0.6秒
write_sen()2.4 設(shè)置自動(dòng)化流程
依次點(diǎn)擊WPS多維表右上角的【自動(dòng)化流程】——【創(chuàng)建空白流程】——【設(shè)置觸發(fā)條件為定時(shí)觸發(fā)】

設(shè)置自動(dòng)化流程
這樣每天固定時(shí)間,如9:00,WPS多維表就會(huì)定時(shí)增加一條記錄,然后PY腳本【每日2句發(fā)送】就會(huì)自動(dòng)執(zhí)行,爬取網(wǎng)上的每日英語(yǔ),并寫入到多維表中。
定時(shí)觸發(fā)
定時(shí)觸發(fā)條件中設(shè)置為【每天觸發(fā)】,觸發(fā)時(shí)間和定時(shí)有效期可以自定義。

自定義觸發(fā)時(shí)間
新增記錄
選擇配置參數(shù)為當(dāng)前的數(shù)據(jù)表,設(shè)置記錄內(nèi)容為當(dāng)前時(shí)間,這樣每天多維表會(huì)自動(dòng)增加一條記錄并自動(dòng)在日期字段填充當(dāng)前日期。

新增記錄為當(dāng)前日期
執(zhí)行PY代碼
接下來(lái),新增時(shí)間記錄,執(zhí)行PY腳本,并傳入當(dāng)前新增記錄ID,這樣代碼就可以把每日英語(yǔ)寫入到上一步的新增記錄里。最后還要點(diǎn)擊【保存并啟動(dòng)】,啟用當(dāng)前流程。

執(zhí)行PY代碼
2.5 設(shè)置企業(yè)微信群發(fā)流程
最后,再設(shè)置一個(gè)發(fā)送企業(yè)微信的自動(dòng)化流程,把上一個(gè)流程中獲得的每日英語(yǔ)發(fā)送到企業(yè)微信,觸發(fā)條件為當(dāng)數(shù)據(jù)表中文本字段內(nèi)容不為空時(shí)。

企業(yè)微信群發(fā)
在發(fā)送企業(yè)微信群消息期間,填寫在2.1部分獲取的webhook地址,消息類型選擇為文本。

發(fā)送企業(yè)微信群聊消息
消息內(nèi)容選擇第1步觸發(fā)的記錄的日期和文本。這樣就可以把【每日2句定時(shí)發(fā)送】流程中寫入的日期和文本信息同步發(fā)送出去。

設(shè)置消息內(nèi)容
最后還要點(diǎn)擊【保存并啟動(dòng)】,啟用當(dāng)前流程。
2.6 效果展示
設(shè)置完成后,每天定時(shí)角發(fā)多維表【每日2句定時(shí)發(fā)送】流程,寫入最新的每日英語(yǔ)信息,完成后,由于文本字段不為空,就會(huì)觸發(fā)【發(fā)送企業(yè)微信】流程,這樣就實(shí)現(xiàn)了每日英語(yǔ)自動(dòng)寫入多維表,并定時(shí)群發(fā)到各個(gè)添加信息推送機(jī)器人的群。發(fā)送的效果如下:

發(fā)送效果
三、寫在最后
本文通過(guò)設(shè)置企業(yè)推送機(jī)器人,構(gòu)建多維表格,設(shè)置自動(dòng)化流程,配置PY腳本,實(shí)現(xiàn)了網(wǎng)上每日英語(yǔ)自動(dòng)爬取,自動(dòng)寫入多維表,并群發(fā)至企業(yè)微信群的自動(dòng)化功能。這一過(guò)程的特點(diǎn)是免費(fèi)、速度快、可定時(shí),經(jīng)過(guò)測(cè)試,代碼執(zhí)行成功率高,自動(dòng)化流程非常穩(wěn)定。
未來(lái),可以繼續(xù)優(yōu)化流程,把發(fā)送的內(nèi)容設(shè)置成富文本信息,還可以配置相關(guān)圖片,增加每日英語(yǔ)內(nèi)容的豐富度和樣式的吸引力,從而更好地助力學(xué)生英語(yǔ)學(xué)習(xí),提升英語(yǔ)學(xué)習(xí)效果,同時(shí)也解放教師,節(jié)約辦公時(shí)間,達(dá)到事半功倍的英語(yǔ)學(xué)習(xí)效果。
以上就是Python腳本結(jié)合WPS多維表實(shí)現(xiàn)推送每日英語(yǔ)功能的詳細(xì)內(nèi)容,更多關(guān)于Python消息推送的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
使用Python開發(fā)一個(gè)圖片OCR管理和文章下載工具
在日常工作中,我們經(jīng)常面臨兩個(gè)零碎但繁瑣的需求,一是管理大量的OCR(文字識(shí)別)圖片素材,二是看到優(yōu)質(zhì)的公眾號(hào)文章,想把里面的圖片批量下載下來(lái)保存素材,下面我們就來(lái)看看如何使用Python將這兩個(gè)功能整合到一個(gè)工具中吧2025-12-12
Python 異步編程 asyncio簡(jiǎn)介及基本用法
asyncio 是 Python 的一個(gè)庫(kù),用于編寫并發(fā)代碼,使用協(xié)程、任務(wù)和 Futures 來(lái)處理 I/O 密集型和高延遲操作,本文給大家介紹Python 異步編程 asyncio簡(jiǎn)介及基本用法,感興趣的朋友一起看看吧2025-05-05
python代碼如何調(diào)出cmd命令行窗口并在cmd窗口中執(zhí)行指定的命令
這篇文章主要介紹了python代碼如何調(diào)出cmd命令行窗口并在cmd窗口中執(zhí)行指定的命令問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
python Protobuf定義消息類型知識(shí)點(diǎn)講解
python實(shí)現(xiàn)flappy bird小游戲
Python 普通最小二乘法(OLS)進(jìn)行多項(xiàng)式擬合的方法
Python爬蟲抓取論壇關(guān)鍵字過(guò)程解析

