欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)知識(shí)點(diǎn)淺析

 更新時(shí)間:2019年05月28日 15:43:34   投稿:laozhang  
在本篇內(nèi)容中小編給學(xué)習(xí)python的朋友們整理了關(guān)于網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)的相關(guān)知識(shí)點(diǎn)以及實(shí)例內(nèi)容,需要的朋友們參考下。

發(fā)送電子郵件

在即時(shí)通信軟件如此發(fā)達(dá)的今天,電子郵件仍然是互聯(lián)網(wǎng)上使用最為廣泛的應(yīng)用之一,公司向應(yīng)聘者發(fā)出錄用通知、網(wǎng)站向用戶(hù)發(fā)送一個(gè)激活賬號(hào)的鏈接、銀行向客戶(hù)推廣它們的理財(cái)產(chǎn)品等幾乎都是通過(guò)電子郵件來(lái)完成的,而這些任務(wù)應(yīng)該都是由程序自動(dòng)完成的。

就像我們可以用HTTP(超文本傳輸協(xié)議)來(lái)訪(fǎng)問(wèn)一個(gè)網(wǎng)站一樣,發(fā)送郵件要使用SMTP(簡(jiǎn)單郵件傳輸協(xié)議),SMTP也是一個(gè)建立在TCP(傳輸控制協(xié)議)提供的可靠數(shù)據(jù)傳輸服務(wù)的基礎(chǔ)上的應(yīng)用級(jí)協(xié)議,它規(guī)定了郵件的發(fā)送者如何跟發(fā)送郵件的服務(wù)器進(jìn)行通信的細(xì)節(jié),而Python中的smtplib模塊將這些操作簡(jiǎn)化成了幾個(gè)簡(jiǎn)單的函數(shù)。

下面的代碼演示了如何在Python發(fā)送郵件。

from smtplib import SMTP
from email.header import Header
from email.mime.text import MIMEText


def main():
  # 請(qǐng)自行修改下面的郵件發(fā)送者和接收者
  sender = 'abcdefg@126.com'
  receivers = ['uvwxyz@qq.com', 'uvwxyz@126.com']
  message = MIMEText('用Python發(fā)送郵件的示例代碼.', 'plain', 'utf-8')
  message['From'] = Header('王大錘', 'utf-8')
  message['To'] = Header('駱昊', 'utf-8')
  message['Subject'] = Header('示例代碼實(shí)驗(yàn)郵件', 'utf-8')
  smtper = SMTP('smtp.126.com')
  # 請(qǐng)自行修改下面的登錄口令
  smtper.login(sender, 'secretpass')
  smtper.sendmail(sender, receivers, message.as_string())
  print('郵件發(fā)送完成!')


if __name__ == '__main__':
  main()

如果要發(fā)送帶有附件的郵件,那么可以按照下面的方式進(jìn)行操作。

from smtplib import SMTP
from email.header import Header
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart

import urllib


def main():
  # 創(chuàng)建一個(gè)帶附件的郵件消息對(duì)象
  message = MIMEMultipart()
  
  # 創(chuàng)建文本內(nèi)容
  text_content = MIMEText('附件中有本月數(shù)據(jù)請(qǐng)查收', 'plain', 'utf-8')
  message['Subject'] = Header('本月數(shù)據(jù)', 'utf-8')
  # 將文本內(nèi)容添加到郵件消息對(duì)象中
  message.attach(text_content)

  # 讀取文件并將文件作為附件添加到郵件消息對(duì)象中
  with open('/Users/Hao/Desktop/hello.txt', 'rb') as f:
    txt = MIMEText(f.read(), 'base64', 'utf-8')
    txt['Content-Type'] = 'text/plain'
    txt['Content-Disposition'] = 'attachment; filename=hello.txt'
    message.attach(txt)
  # 讀取文件并將文件作為附件添加到郵件消息對(duì)象中
  with open('/Users/Hao/Desktop/匯總數(shù)據(jù).xlsx', 'rb') as f:
    xls = MIMEText(f.read(), 'base64', 'utf-8')
    xls['Content-Type'] = 'application/vnd.ms-excel'
    xls['Content-Disposition'] = 'attachment; filename=month-data.xlsx'
    message.attach(xls)
  
  # 創(chuàng)建SMTP對(duì)象
  smtper = SMTP('smtp.126.com')
  # 開(kāi)啟安全連接
  # smtper.starttls()
  sender = 'abcdefg@126.com'
  receivers = ['uvwxyz@qq.com']
  # 登錄到SMTP服務(wù)器
  # 請(qǐng)注意此處不是使用密碼而是郵件客戶(hù)端授權(quán)碼進(jìn)行登錄
  # 對(duì)此有疑問(wèn)的讀者可以聯(lián)系自己使用的郵件服務(wù)器客服
  smtper.login(sender, 'secretpass')
  # 發(fā)送郵件
  smtper.sendmail(sender, receivers, message.as_string())
  # 與郵件服務(wù)器斷開(kāi)連接
  smtper.quit()
  print('發(fā)送完成!')


if __name__ == '__main__':
  main()

發(fā)送短信

發(fā)送短信也是項(xiàng)目中常見(jiàn)的功能,網(wǎng)站的注冊(cè)碼、驗(yàn)證碼、營(yíng)銷(xiāo)信息基本上都是通過(guò)短信來(lái)發(fā)送給用戶(hù)的。在下面的代碼中我們使用了互億無(wú)線(xiàn)短信平臺(tái)(該平臺(tái)為注冊(cè)用戶(hù)提供了50條免費(fèi)短信以及常用開(kāi)發(fā)語(yǔ)言發(fā)送短信的demo,可以登錄該網(wǎng)站并在用戶(hù)自服務(wù)頁(yè)面中對(duì)短信進(jìn)行配置)提供的API接口實(shí)現(xiàn)了發(fā)送短信的服務(wù),當(dāng)然國(guó)內(nèi)的短信平臺(tái)很多,讀者可以根據(jù)自己的需要進(jìn)行選擇(通常會(huì)考慮費(fèi)用預(yù)算、短信達(dá)到率、使用的難易程度等指標(biāo)),如果需要在商業(yè)項(xiàng)目中使用短信服務(wù)建議購(gòu)買(mǎi)短信平臺(tái)提供的套餐服務(wù)。

import urllib.parse
import http.client
import json


def main():
  host = "106.ihuyi.com"
  sms_send_uri = "/webservice/sms.php?method=Submit"
  # 下面的參數(shù)需要填入自己注冊(cè)的賬號(hào)和對(duì)應(yīng)的密碼
  params = urllib.parse.urlencode({'account': '你自己的賬號(hào)', 'password' : '你自己的密碼', 'content': '您的驗(yàn)證碼是:147258。請(qǐng)不要把驗(yàn)證碼泄露給其他人。', 'mobile': '接收者的手機(jī)號(hào)', 'format':'json' })
  print(params)
  headers = {'Content-type': 'application/x-www-form-urlencoded', 'Accept': 'text/plain'}
  conn = http.client.HTTPConnection(host, port=80, timeout=30)
  conn.request('POST', sms_send_uri, params, headers)
  response = conn.getresponse()
  response_str = response.read()
  jsonstr = response_str.decode('utf-8')
  print(json.loads(jsonstr))
  conn.close()


if __name__ == '__main__':
  main()

相關(guān)文章

  • python 進(jìn)程池pool使用詳解

    python 進(jìn)程池pool使用詳解

    這篇文章主要介紹了python 進(jìn)程池pool使用的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)python進(jìn)程,感興趣的朋友可以了解下
    2020-10-10
  • python 爬取天氣網(wǎng)衛(wèi)星圖片

    python 爬取天氣網(wǎng)衛(wèi)星圖片

    根據(jù)網(wǎng)站URL的規(guī)律編寫(xiě)的一個(gè)爬取天氣網(wǎng)衛(wèi)星圖片的python爬蟲(chóng),使用了requests包,感興趣的朋友可以參考下
    2021-06-06
  • Python中操作文件之write()方法的使用教程

    Python中操作文件之write()方法的使用教程

    這篇文章主要介紹了Python中操作文件之write()方法的使用教程,是Python入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • Pandas 模糊查詢(xún)與替換的操作

    Pandas 模糊查詢(xún)與替換的操作

    這篇文章主要介紹了Pandas 模糊查詢(xún)與替換的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • Django xadmin開(kāi)啟搜索功能的實(shí)現(xiàn)

    Django xadmin開(kāi)啟搜索功能的實(shí)現(xiàn)

    今天小編就為大家分享一篇Django xadmin開(kāi)啟搜索功能的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • python datetime處理時(shí)間小結(jié)

    python datetime處理時(shí)間小結(jié)

    這篇文章主要介紹了python datetime處理時(shí)間小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Python:type、object、class與內(nèi)置類(lèi)型實(shí)例

    Python:type、object、class與內(nèi)置類(lèi)型實(shí)例

    今天小編就為大家分享一篇Python:type、object、class與內(nèi)置類(lèi)型實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • python獲取百度熱榜鏈接的實(shí)例方法

    python獲取百度熱榜鏈接的實(shí)例方法

    在本篇文章里小編給大家整理了關(guān)于python獲取百度熱榜鏈接的實(shí)例方法,需要的朋友們可以學(xué)習(xí)參考下。
    2020-08-08
  • Python批量啟動(dòng)多線(xiàn)程代碼實(shí)例

    Python批量啟動(dòng)多線(xiàn)程代碼實(shí)例

    這篇文章主要介紹了python批量啟動(dòng)多線(xiàn)程代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Django如何防止定時(shí)任務(wù)并發(fā)淺析

    Django如何防止定時(shí)任務(wù)并發(fā)淺析

    這篇文章主要給大家介紹了關(guān)于Django如何防止定時(shí)任務(wù)并發(fā)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Django具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05

最新評(píng)論