pythonドッキングihyiはショートメッセージの検証コードの送信を実現します。


日常生活の中で、私達はよくショートメッセージの検証コードを受け取るシーンに出会います。Pythonも簡単な方法でこの機能を実現します。以下はコードでこの機能を実現します。
普通、私たちはメールプロバイダのサーバーを借りてメールを送る必要があります。独学に使うなら、一定の無料本数の制限があります。
私たちは相互記憶のプラットフォームを借りてコードを実現します。
まずhttp://www.ihuyi.com/sms.htmlにアクセスしてプライベートアカウントを登録してください。登録してから個人情報インターフェースに入ると自分のアカウントと鍵が見えます。
インポートするパッケージ:

import requests,random,bs4
requestsモジュールは要求を送信するために使用され、Randowmモジュールは検証コードを生成するために使用され、bs 4モジュールはサーバ応答情報を解析するために使用される。これらのパッケージがインストールされていない場合は、cmdを開いて、pip installパッケージ名を入力します。  インストールを行います。
一般的な携帯電話の認証コードはランダムで四桁です。だから、一つの関数を使って実現します。主にラドム関数で4桁の乱数を生成して返します。

def create_verify_code():
  """      4     """
  verify_code = ''
  for i in range(4):
    verify_code += str(random.randint(0,9))
  return verify_code
続いて、サプライヤのAPIインターフェースを利用してメールを送ります。APIドキュメントは相互記憶の公式サイトでダウンロードできます。または自分の口座に行けば見つけられます。
headersは要求ヘッダを構築するために使用しています。携帯番号と送信するテキストを入力して、requestsを利用してpost要求をサーバーに送信すると、リターン情報を受信します。

def sendmessagecode(phonenum,content):
  """       """
  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)
サーバからの返信を受けたら、情報を解析してサーバが成功したかどうかを判断することができます。

response = sendmessagecode(phoneNum,content)  #  response       
サーバと接続しているかどうかを判断し、リンクが成功したら次のステップを実行します。そうでないと失敗情報を印刷します。

 if 200 == response.status_code:
   TODO...
  else:
    print('        :',response.status_code)
応答が成功すると、Beautiful Soupを利用して応答情報を解析します。

soup = bs4.BeautifulSoup(response.text,features='lxml') #   soup  
code = soup.find('code').string  
msg = soup.find('msg').string
if 2 == code: #         2,        
  print('code: %s msg: %s ' %(code,msg))
else:
  print('code: %s msg: %s ' %(code,msg))
全文コード:

#! python3
#       ,            
import requests,random,bs4
 
host = 'http://106.ihuyi.com/webservice/sms.php?method=Submit'
account = 'C27187646'
password = '64713042f161ae0555e9617afef40610'
 
def sendmessagecode(phonenum,content):
  """       """
  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():
  """      4     """
  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 = '      :%s。             。' %code
  response = sendmessagecode(phoneNum,content)
  print('    :',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('        :',response.status_code)
以上はpythonドッキングihyiです。ショートメッセージの検証コードの送信の詳細を実現します。pythonショートメッセージの検証コードの送信例に関する資料は他の関連記事に注目してください。