前言
之前發(fā)過(guò)一篇文章棘伴,用 Python 制作的給父母天氣預(yù)報(bào)提醒的小工具天氣變冷了寞埠,給父母制作一個(gè)天氣提醒小助手,這篇文章我同步到博客上之后焊夸,有讀者在評(píng)論區(qū)留言仁连,對(duì)于部分微信沒(méi)有網(wǎng)頁(yè)版接口,導(dǎo)致無(wú)法實(shí)現(xiàn)這個(gè)功能淳地,這位讀者建議怖糊,建議用發(fā)短信的方式,這樣颇象,就不會(huì)受限于微信的限制伍伤。!
?
這是一個(gè)好方法遣钳,今天的教程就是教大家怎么發(fā)送免費(fèi)短信給女朋友扰魂。
發(fā)送短信接口,我知道的常見(jiàn)的有兩個(gè)平臺(tái),一個(gè)是 twilio劝评,可以免費(fèi)發(fā)短信 500 條姐直,可發(fā)任意信息,一個(gè)是騰訊云蒋畜,可以免費(fèi)發(fā)短信 100 條声畏,需要申請(qǐng)短信發(fā)送內(nèi)容模板。
鑒于 twilio 免費(fèi)次數(shù)多一些姻成,所以插龄,這次我們就 twilio來(lái)發(fā)送當(dāng)天的天氣信息給爸媽了。
twilio注冊(cè)
要發(fā)送短信科展,我們需要現(xiàn)在 twilio 官網(wǎng)注冊(cè)一個(gè)賬號(hào)均牢。
https://www.twilio.com/
點(diǎn)擊 Sign Up 注冊(cè)一個(gè)賬號(hào)。
?
填寫郵箱和密碼等資料才睹,提交后會(huì)有一個(gè)判斷是否為機(jī)器人的驗(yàn)證徘跪,點(diǎn)擊左右箭頭使圖案顯示為正圖就可以了。
再到剛才填寫的郵箱中去驗(yàn)證下琅攘,需要填入手機(jī)號(hào)驗(yàn)證垮庐。
?
剛開(kāi)始用了移動(dòng)號(hào)發(fā)了兩次都沒(méi)有收到驗(yàn)證碼,不知道什么原因坞琴,之后換了電信后就收到了驗(yàn)證碼突硝。
驗(yàn)證成功后會(huì)提示選擇是否通過(guò)代碼調(diào)用。
?
選擇 yes 后再選擇對(duì)應(yīng)的語(yǔ)言置济,我們當(dāng)然是選擇 Python 了。
?
獲取試用號(hào)
選擇使用用途后锋八,可以就可以獲取一個(gè)試用的號(hào)碼了浙于,點(diǎn)擊 Get a Trial Number 按鈕。
?
我們可以看到系統(tǒng)給我提供的這個(gè)號(hào)碼挟纱。
?
點(diǎn)擊確定后就會(huì)出現(xiàn)成功的頁(yè)面羞酗,顯示 Twilio 提供的號(hào)碼,這個(gè)號(hào)碼就是用來(lái)發(fā)送短信的紊服。
?
獲取號(hào)碼成功后自動(dòng)跳回到主頁(yè)檀轨,下方有 Python 調(diào)用短信接口的示例。
?
進(jìn)入接口調(diào)用說(shuō)明后欺嗤,我們看到右邊直接由 Python 調(diào)用接口發(fā)短信的示例参萄。
?
我們直接拿來(lái)用即可,把代碼中 account_sid 和 auth_token 替換成自己的煎饼,這個(gè)兩個(gè)值在剛才顯示號(hào)碼那個(gè)頁(yè)面讹挎。
?
再把 message 中的 body 換成你自己的文本,把發(fā)送信息的號(hào)碼換成官方提供的號(hào)碼。
接收號(hào)驗(yàn)證
接收號(hào)碼在使用前筒溃,需要在 Twilio 上驗(yàn)證下马篮,點(diǎn)擊右側(cè)的 verified numbers 進(jìn)入,添加號(hào)碼怜奖。
?
因?yàn)檫@是免費(fèi)版浑测,所以只支持一個(gè)號(hào)碼,如果之前有驗(yàn)證號(hào)碼的話歪玲,我們需要點(diǎn)擊右側(cè)的 X 把這個(gè)號(hào)碼號(hào)碼刪除才能添加新的號(hào)碼迁央。
?
點(diǎn)擊驗(yàn)證號(hào)碼的按鈕后,在彈出的頁(yè)面選擇左下方的 text you instead读慎,也就是用短信驗(yàn)證碼來(lái)驗(yàn)證新添加的號(hào)碼漱贱,你要發(fā)給女朋友,當(dāng)然夭委,這個(gè)接收的號(hào)碼都填女朋友的了幅狮。
?
填入號(hào)碼后,點(diǎn)擊驗(yàn)證株灸,等待驗(yàn)證碼崇摄。
?
我分別試了移動(dòng)號(hào)、聯(lián)通號(hào)慌烧、電信號(hào)逐抑,發(fā)現(xiàn)電信號(hào)和聯(lián)通卡能正常收到驗(yàn)證碼通過(guò)驗(yàn)證,移動(dòng)號(hào)發(fā)了幾次都收不到驗(yàn)證碼屹蚊,卡里是有余額的厕氨,可能是移動(dòng)卡不支持這個(gè)接口,大家可以試試汹粤。
代碼調(diào)試
運(yùn)行代碼前命斧,不要忘了把 twilio 庫(kù)用 pip 命令安裝下。
pip?install?twilio
然后把代碼中的幾個(gè)值替換成自己的嘱兼。
?
把剛才驗(yàn)證成功的號(hào)添加到代碼中国葬,運(yùn)行代碼,成功后就會(huì)收到發(fā)送的短信芹壕。
?
然后我們把之前的天氣信息用短信發(fā)出去汇四,當(dāng)然你可以發(fā)送其他信息。這里我為了偷懶踢涌,用之前的天氣信息來(lái)舉例通孽,發(fā)金山詞霸語(yǔ)句的代碼我也放一起了。
之前的代碼中把微信相關(guān)的去掉斯嚎,天氣接口部分保留利虫。
?
把其中的 key 換成自己的挨厚,具體操作詳見(jiàn)這篇文章天氣變冷了,給父母制作一個(gè)天氣提醒小助手糠惫。
把剛才發(fā)送短信的內(nèi)容替換成天氣接口返回的信息 msg疫剃,定時(shí)操作的代碼和之前一樣。
?
運(yùn)行代碼后的效果如下:
?
同樣硼讽,我還是把程序放在服務(wù)器上巢价,第二天同一時(shí)間會(huì)繼續(xù)發(fā)送當(dāng)天的天氣信息,我設(shè)置的是相隔 24 小時(shí)固阁,當(dāng)然壤躲,你可以改變相隔時(shí)間。