av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

python對接ihuyi實(shí)現(xiàn)短信驗(yàn)證碼發(fā)送

瀏覽:3日期:2022-07-26 09:09:21

在日常生活中我們經(jīng)常會遇到接收短信驗(yàn)證碼的場景,Python也提供了簡便的方法實(shí)現(xiàn)這個功能,下面就用代碼來實(shí)現(xiàn)這個功能。

一般我們需要租借短信供應(yīng)商的服務(wù)器發(fā)送短信。如果是用于自學(xué)會有一定免費(fèi)條數(shù)的限額。

我們就借用互憶的平臺來是實(shí)現(xiàn)代碼。

首先需要訪問http://www.ihuyi.com/sms.html注冊私人賬號,注冊完之后進(jìn)入個人信息界面會看到自己的賬號和密鑰。

所需導(dǎo)入的包:

import requests,random,bs4

requests模塊用于發(fā)送請求,random模塊用于產(chǎn)生驗(yàn)證碼,bs4模塊用于解析服務(wù)器響應(yīng)信息。如果沒有安裝這些包,打開cmd,輸入pip install 包名 進(jìn)行安裝。

一般手機(jī)驗(yàn)證碼都是隨機(jī)四位數(shù),所以我們用一個函數(shù)來實(shí)現(xiàn),主要用random函數(shù)產(chǎn)生4位隨機(jī)數(shù)并返回。

def create_verify_code(): '''隨機(jī)產(chǎn)生一個4位數(shù)驗(yàn)證碼''' verify_code = ’’ for i in range(4): verify_code += str(random.randint(0,9)) return verify_code

接著就要利用供應(yīng)商的API接口來發(fā)送短信,API文檔在互憶官網(wǎng)上就能下載到或者到自己賬戶中就能找到。

headers用于構(gòu)造請求頭,我們只需傳入手機(jī)號和要發(fā)送的文本,然后利用requests發(fā)送post請求給服務(wù)器,就會收到返回信息。

def sendmessagecode(phonenum,content): '''發(fā)送短信驗(yàn)證碼''' headers = {'Content-type': 'application/x-www-form-urlencoded', 'Accept': 'text/plain'} data = {’account’:account,’password’:password,’mobile’:phonenum,’content’:content} return requests.post(host,data=data,headers=headers)

在收到服務(wù)器返回信息后,我們就可以解析信息,來判斷服務(wù)器是否發(fā)送成功。

response = sendmessagecode(phoneNum,content) # 用response來接收響應(yīng)信息

判斷是否與服務(wù)器聯(lián)通,若鏈接成功再進(jìn)行下一步,否則打印失敗信息。

if 200 == response.status_code: TODO... else: print(’與服務(wù)器連接失敗:’,response.status_code)

若響應(yīng)成功,就利用BeautifulSoup來解析響應(yīng)信息。

soup = bs4.BeautifulSoup(response.text,features=’lxml’) # 構(gòu)造soup對象code = soup.find(’code’).string msg = soup.find(’msg’).stringif 2 == code: # 若服務(wù)器響應(yīng)碼為2,說明短信發(fā)送成功 print(’code: %s msg: %s ’ %(code,msg))else: print(’code: %s msg: %s ’ %(code,msg))

全文代碼:

#! python3# 測試發(fā)送短信,所用服務(wù)器為互億測試賬號import requests,random,bs4 host = ’http://106.ihuyi.com/webservice/sms.php?method=Submit’account = ’C27187646’password = ’64713042f161ae0555e9617afef40610’ def sendmessagecode(phonenum,content): '''發(fā)送短信驗(yàn)證碼''' headers = {'Content-type': 'application/x-www-form-urlencoded', 'Accept': 'text/plain'} data = {’account’:account,’password’:password,’mobile’:phonenum,’content’:content} return requests.post(host,data=data,headers=headers) def create_verify_code(): '''隨機(jī)產(chǎn)生一個4位數(shù)驗(yàn)證碼''' verify_code = ’’ for i in range(4): verify_code += str(random.randint(0,9)) return verify_code if __name__ == ’__main__’: phoneNum = ’159XXXXXXXX’ code = create_verify_code() content = ’您的驗(yàn)證碼是:%s。請不要把驗(yàn)證碼泄露給其他人。’ %code response = sendmessagecode(phoneNum,content) print(’短信內(nèi)容:’,content) if 200 == response.status_code: soup = bs4.BeautifulSoup(response.text,features=’lxml’) code = soup.find(’code’).string msg = soup.find(’msg’).string if 2 == code: print(’code: %s msg: %s ’ %(code,msg)) else: print(’code: %s msg: %s ’ %(code,msg)) else: print(’與服務(wù)器連接失敗:’,response.status_code)

以上就是python對接ihuyi實(shí)現(xiàn)短信驗(yàn)證碼發(fā)送的詳細(xì)內(nèi)容,更多關(guān)于python短信驗(yàn)證碼發(fā)送實(shí)例的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 日本一级大毛片a一 | 好吊妞这里只有精品 | 狠狠干美女 | 老女人性生活视频 | 久久av片 | 婷婷六月天 | 亚洲看片 | 亚洲视频网 | 91久久精品日日躁夜夜躁欧美 | 国产精品第一 | 国产欧美成人 | 国产精品一区av | 91一区二区三区 | 日韩免费一级片 | 黄色影院在线观看 | 国产精品久久久久永久免费看 | 成人性生活视频 | 日韩在线综合 | 国产一区精品视频 | 一区二区在线视频 | 欧美精品亚洲精品 | 亚洲黄色大片 | 久久手机视频 | 日本黄色片视频 | 久久机热这里只有精品 | 亚洲国产福利 | av黄色在线观看 | 日韩一区精品 | 国产精品人人做人人爽人人添 | 日本高清在线观看 | 午夜久久精品 | 91最新网址| 四虎影院成人 | 免费在线观看av网站 | 999久久久 | 一区二区高清视频 | 91麻豆精品一区二区三区 | 超碰av在线播放 | 精品一区久久 | 在线免费播放av | 久久精品久久久久久久 |