日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python脚本编写_如何用Python包编写一个简单的脚本,表达你对父母的爱?

發(fā)布時(shí)間:2025/3/21 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python脚本编写_如何用Python包编写一个简单的脚本,表达你对父母的爱? 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
全文共2800字,預(yù)計(jì)學(xué)習(xí)時(shí)長(zhǎng)6分鐘

在繁忙的工作生活中,我們經(jīng)常忘記給所愛的人發(fā)WhatsApp。本教程將使用Python包Twilio編寫一個(gè)簡(jiǎn)單的Python腳本來(lái)發(fā)送WhatsApp消息。我們會(huì)把代碼放在亞馬遜網(wǎng)絡(luò)服務(wù)云(AWS)上,以便在每天的特定時(shí)間運(yùn)行它。

開始吧!

一個(gè)解決方案是使用Python的Selenium包,并使用WhatsApp網(wǎng)絡(luò),而不是免費(fèi)層結(jié)束后才提供訂閱的Twilio。但WhatsApp需要不時(shí)掃描手機(jī)上的QR碼,因此無(wú)法實(shí)現(xiàn)自動(dòng)化。

我們將分三步進(jìn)行:

? Twilio初始設(shè)置

? 理解并修改代碼

? 將包放在帶有觸發(fā)器的AWS lambda上

步驟1:Twilio 初始設(shè)置

創(chuàng)建一個(gè)免費(fèi)的Twilio帳戶,并確認(rèn)電子郵件和手機(jī)號(hào)碼。

此外,一個(gè)免費(fèi)層Twilio賬戶需要使用Twilio沙箱的WhatsApp,這意味著你不能使用你的號(hào)碼,且必須通過一次性許可才能收到WhatsApp的消息。

WhatsApp批準(zhǔn)Twilio使用你的號(hào)碼后,你便可以獲得自己的號(hào)碼,解決上面兩個(gè)問題。你只需填寫一個(gè)表格,并等待一段時(shí)間。

這些消息都令人氣餒,但我們的免費(fèi)層解決方案做得很好。而且就目前而言,這是唯一可行的方法。

現(xiàn)在你必須將接收者的手機(jī)連接到WhatsApp沙箱上才能開始接收信息。

現(xiàn)在轉(zhuǎn)到WhatsApp測(cè)試版控制臺(tái)的學(xué)習(xí)部分。

將分配給你的WhatsApp號(hào)碼保存在聯(lián)系人中。你可以給它取任何名字。為了簡(jiǎn)單起見,我們將它保存為Twilio Sandbox,然后從我父親的手機(jī)發(fā)送一條消息給它,如上所示。這必須進(jìn)行一次,而且只能進(jìn)行一次。

現(xiàn)在轉(zhuǎn)到Twilio控制臺(tái),獲取帳戶SSID和身份驗(yàn)證令牌。這將幫助Twilio知道是你在執(zhí)行代碼。

步驟2:理解并修改代碼

下載GitHub存儲(chǔ)庫(kù)并提取它:https://github.com/kartik-nighania/whatsapp_with_aws_lambda

壓縮文件中的內(nèi)容

你將在里面找到我們的代碼文件和部署包。

? whatsapp_messaging.py

? aws_lambda_deploy.zip

whatsapp_messaging代碼文件

? 第1行:導(dǎo)入Twilio包,并使用它的REST客戶端來(lái)訪問Twilio API。

? 第3行:創(chuàng)建了一個(gè)函數(shù)msg_mom_and_dad,它將用于AWS,并在每天的特定時(shí)間運(yùn)行。

? 第6-7行:如步驟1所述,替換帳戶的sid和auth_token。

? 第9行:使用我們的憑證創(chuàng)建Twilio客戶端對(duì)象。

? 第13行:創(chuàng)建一個(gè)Python字典,其中名字作為key,電話號(hào)碼作為value。還可以繼續(xù)向這個(gè)Python字典添加內(nèi)容,以便向更多的人發(fā)送消息。

? 第15行:寫一個(gè)for循壞遍歷所有的key和value對(duì)(目前只有一個(gè))。在body中寫你的消息。我寫了非常簡(jiǎn)單的一句“早上好”,后面加上key值。上面的代碼顯示“早上好,爸爸”,之后我們加上for和數(shù)字,該數(shù)字是之前獲得的Twilio WhatsApp號(hào)碼。后面再加上to和數(shù)字,該數(shù)字是之前用于WhatsApp沙箱確認(rèn)的號(hào)碼。

? 第23行:通過打印SID檢查消息狀態(tài)的行。反正我們不會(huì)用這個(gè)。

我們要修改五樣?xùn)|西:

? twilio_sid

? auth_token

? contact_directory

? from_

? body (非必須)

更改這些之后保存,然后提取aws_lambda_deploy.zip并使用新創(chuàng)建的函數(shù)替換里面的whatsapp_messaging.py,再進(jìn)行壓縮。我們只是想用你的憑證和聯(lián)系方式更改代碼。現(xiàn)在部署包已經(jīng)準(zhǔn)備好了。

步驟3:將包放在帶有觸發(fā)器的AWS Lambda上

我們的代碼可以運(yùn)行并發(fā)送WhatsApp消息。你也許想知道部署包中的其他文件是什么,它們其實(shí)是Twilio包及其所有其他依賴項(xiàng)。因?yàn)槲覀儗⒃跊]有Twilio包的Python環(huán)境中使用AWS Lambda函數(shù)。但是為什么不運(yùn)行pip install twilio來(lái)安裝它呢?因?yàn)槲覀冞@里沒有服務(wù)器。

AWS Lambda是一種無(wú)服務(wù)器的計(jì)算服務(wù),可以根據(jù)用戶的需要基于不同的AWS事件和觸發(fā)器運(yùn)行一段代碼。因此,全天候運(yùn)行服務(wù)器(AWS中的EC2實(shí)例)來(lái)執(zhí)行我們的小任務(wù)是對(duì)計(jì)算資源和金錢的浪費(fèi)。這里L(fēng)ambda函數(shù)每天只在我們提到的時(shí)間觸發(fā)器上運(yùn)行很短的時(shí)間。

Lambda服務(wù)非常便宜,每個(gè)月可以免費(fèi)滿足100萬(wàn)個(gè)請(qǐng)求。

登錄到https://aws.amazon.com,然后單擊Services -> Compute -> Lambda -> create a function

命名你的函數(shù)。

我們選擇Python 3.6作為環(huán)境。

由于我們不需要連接到AWS中的其他服務(wù),選擇基本權(quán)限就可以。

單擊create function,你將看到主儀表板。

在函數(shù)代碼塊中,向Lambda函數(shù)處理程序指定:我們希望在每次調(diào)用Lambda函數(shù)時(shí)運(yùn)行whatsapp_messaging Python文件和其中的msg_mom_and_dad函數(shù)。如上所述更改處理程序值。

在代碼入口點(diǎn),選擇upload a.zip file,上載在步驟2中創(chuàng)建的部署包并保存。

現(xiàn)在我們的代碼可以運(yùn)行了。可以單擊test并檢查該功能是否成功將消息發(fā)送到指定的WhatsApp號(hào)碼。

最后一步是每天在特定的時(shí)間觸發(fā)它。在設(shè)計(jì)器框中單擊add trigger -> CloudWatch Events即可。

我們必須創(chuàng)建一個(gè)新規(guī)則。你可以任意命名和描述它。

將規(guī)則類型設(shè)置為schedule expression。

我們使用cron()指定時(shí)間。30 1指協(xié)調(diào)世界時(shí)(UTC)凌晨1:30(相當(dāng)于印度標(biāo)準(zhǔn)時(shí)間早上7點(diǎn))。

接下來(lái)的兩個(gè)*分別代表一月中的某一天和月份。

再后面的?和*分別代表一周中的某一天和一年中的某一天。我們用*和?指定每天、每月和每年。可以參考下面的示例來(lái)創(chuàng)建自己的cron參數(shù)。若想深入了解,可參考aws_cron_docs上的cron向?qū)А?/p>

完成后,請(qǐng)確保選中了Enable trigger復(fù)選框。最后,單擊add按鈕。

現(xiàn)在可以在Lambda函數(shù)儀表板上看到CloudWatch事件附加到Lambda函數(shù)上。向下滾動(dòng)時(shí),可以看到啟用了CloudWatch事件來(lái)觸發(fā)函數(shù)。

就是這樣!你可以將Twilio沙箱名稱更改為你的名稱,甚至可以響應(yīng)來(lái)自Twilio儀表板的回復(fù)。

留言 點(diǎn)贊 關(guān)注

我們一起分享AI學(xué)習(xí)與發(fā)展的干貨

編譯組:鮑怡然、劉賀

相關(guān)鏈接:

https://medium.com/better-programming/i-wrote-a-script-to-whatsapp-my-parents-every-morning-in-just-20-lines-of-python-code-5d203c3b36c1

如需轉(zhuǎn)載,請(qǐng)后臺(tái)留言,遵守轉(zhuǎn)載規(guī)范

總結(jié)

以上是生活随笔為你收集整理的python脚本编写_如何用Python包编写一个简单的脚本,表达你对父母的爱?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。