python 网络编程

简介: coder消息摘要标题  阅读者理解消息的抄送着即使邮件不是直接写给他们的MIME 多用途因特网邮件扩展Multipurpose internet mail extension;multipurpose internet mail extension如果RFC 2822要求消息仅包含U.

coder消息摘要标题  阅读者理解
消息的抄送着即使邮件不是直接写给他们的
MIME 多用途因特网邮件扩展
Multipurpose internet mail extension;
multipurpose internet mail extension

如果RFC 2822要求消息仅包含U.S.ASCII字符
如何使人们发送带有图片和其他二进制文件附件的邮件 发送带有图片和其他二进制文件的附件
利用RFC 2822扩展MIME(Multi-purpose internet mail extension)
发送图片及其他二进制附件邮件MIME;
向电子邮件消息添加二进制附件  用非英语字符写消息甚至消息头  使消息内容在另一端正确显示
假设另一端理解MIME  邮件终端能理解MIME

主要的MIME标准是RFC 1521 描述了如何将二进制数据写入E-mail

MIME编码quoted-printable coders
base64 编码
quoted-printable quopri

base64
base64编码则用于二进制数据 它不应当用于人类可读的文本 完全掩盖了文本
既然quoted-printable可以处理所有数据,并且不破坏人类可读文本 有些数据并不是printable 而硬将它们编码为quoted-printable格式引起误导  Base64编码比quoted-printable编码表示二进制数据更有效率
使用以长串随机的二进制字符对两种编码方式进行比较

Python 字符串数据编码解码模块
quoted-printable quopri
base64
用base64对大多数二进制数据进行编码节省空间带宽
用base64 编码ascii字符串过犹不及
MIME支持两种不同类型编码方式
一种可读的编码quoted-printable哪一种密集型编码
可读编码quoted-printable 密集型编码


MIME multipurpose internet mail extension;
MIME 比它名称揭示的 emailapp 也使用mime许多特征
使用base64 或是 quoted-printable编码将非ascii字符转换成Ascii字符的思想
base64编码有时也用在不对文本做加密的前提下使文本隐晦不易读

关于内容类型的思想
Here's that picture I took of you 通过使用Base64编码 接收者将得到发送时进行编码数据
内容类型
邮件阅读器如何才能知道图片   而不是其他形式二进制数据
MIME通过定义一个定制的RFC 2822 格式的邮件头解决这个问题
头名 Content-Type;
描述了邮件主体文件类型
邮件主体问类型
邮件主体邮件类型;
头名Content-Type 描述了邮件主体文件类型  接收者邮件客户端可以知道如何显示
描述邮件主体文件类型

内容类型包括text/plain 如何将一封普通的E-mail消息封装在MIME
text/html image/jpeg video/mpeg audio/mp3
每种内容类型都有一个主类型 子类型  斜杠分割
每个类型都有一个主类型和子类型
主类型和子类型用斜杠分割
子类型通常指定特定类型文本格式
内容类型的字符串能够告诉接收者如何处理
MIME用在E-mail世界之外
http响应都有一个Content-type头
就像MIME E-mail消息
告诉web浏览器如何显示响应

创建带附件的MIME消息
制作一个包含已编码图片文件MIME消息

MIME多部分消息
消息主体没有用于容纳文本的部分
在文件主体内放置文本将破坏图片文件
 主体内放置文本 破坏图片文件
邮件消息的Content-Type头可以是text/plain 或者image/jpeg
除了分类其他标准定义的文件格式
除了分类其他标准定义的文件格式   针对图片格式image
multipart特殊主类型
主内容类型multipart的消息可以在它的主体包含其他MIME 消息

每个MIME消息有自己的邮件头内容类型
观察multipart内容类型的工作原理最好的方法是使用e-maill.mime,multipart创建多部分消息 使用email.mime*创建作为附件的文件

仅有内容类型(multipart/mixed)不足以使邮件主体有意义 MIME需要对边界 进行定义 边界是Python半随机地生成字符串
半随机生成的字符串 在邮件中 标记一部分结束 一部分开始的地方
消息作为整体拥有关联的E-mail消息的所有头Subject From,To MIME特定的Content-header
既在消息头部也在消息体出现

事先不能确定使用哪个类表示邮件消息
称作StartMessage类 创建E-mail消息
将主体文本保存在简单的Message表示中
添加附件 使用MimeMultipart
策略产生与典型终端用户邮件程序相同的E-mail消息主体

目录
相关文章
|
4月前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
536 55
|
3月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
303 5
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
|
13天前
|
存储 监控 算法
基于 Python 哈希表算法的局域网网络监控工具:实现高效数据管理的核心技术
在当下数字化办公的环境中,局域网网络监控工具已成为保障企业网络安全、确保其高效运行的核心手段。此类工具通过对网络数据的收集、分析与管理,赋予企业实时洞察网络活动的能力。而在其运行机制背后,数据结构与算法发挥着关键作用。本文聚焦于 PHP 语言中的哈希表算法,深入探究其在局域网网络监控工具中的应用方式及所具备的优势。
47 7
|
21天前
|
存储 数据库 Python
利用Python获取网络数据的技巧
抓起你的Python魔杖,我们一起进入了网络之海,捕捉那些悠游在网络中的数据鱼,想一想不同的网络资源,是不是都像数不尽的海洋生物,我们要做的,就是像一个优秀的渔民一样,找到他们,把它们捕获,然后用他们制作出种种美味。 **1. 打开魔法之门:请求包** 要抓鱼,首先需要一个鱼网。在Python的世界里,我们就是通过所谓的“请求包”来发送“抓鱼”的请求。requests是Python中常用的发送HTTP请求的库,用它可以方便地与网络上的资源进行交互。所谓的GET,POST,DELETE,还有PUT,这些听起来像偶像歌曲一样的单词,其实就是我们鱼网的不同方式。 简单用法如下: ``` im
53 14
|
1月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
害虫识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了12种常见的害虫种类数据集【"蚂蚁(ants)", "蜜蜂(bees)", "甲虫(beetle)", "毛虫(catterpillar)", "蚯蚓(earthworms)", "蜚蠊(earwig)", "蚱蜢(grasshopper)", "飞蛾(moth)", "鼻涕虫(slug)", "蜗牛(snail)", "黄蜂(wasp)", "象鼻虫(weevil)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Djan
142 1
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
5月前
|
Python
Python中的异步编程:使用asyncio和aiohttp实现高效网络请求
【10月更文挑战第34天】在Python的世界里,异步编程是提高效率的利器。本文将带你了解如何使用asyncio和aiohttp库来编写高效的网络请求代码。我们将通过一个简单的示例来展示如何利用这些工具来并发地处理多个网络请求,从而提高程序的整体性能。准备好让你的Python代码飞起来吧!
252 2
|
17天前
|
数据采集 存储 监控
Python 原生爬虫教程:网络爬虫的基本概念和认知
网络爬虫是一种自动抓取互联网信息的程序,广泛应用于搜索引擎、数据采集、新闻聚合和价格监控等领域。其工作流程包括 URL 调度、HTTP 请求、页面下载、解析、数据存储及新 URL 发现。Python 因其丰富的库(如 requests、BeautifulSoup、Scrapy)和简洁语法成为爬虫开发的首选语言。然而,在使用爬虫时需注意法律与道德问题,例如遵守 robots.txt 规则、控制请求频率以及合法使用数据,以确保爬虫技术健康有序发展。
|
2月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
蘑菇识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了9种常见的蘑菇种类数据集【"香菇(Agaricus)", "毒鹅膏菌(Amanita)", "牛肝菌(Boletus)", "网状菌(Cortinarius)", "毒镰孢(Entoloma)", "湿孢菌(Hygrocybe)", "乳菇(Lactarius)", "红菇(Russula)", "松茸(Suillus)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,
172 11
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
1月前
|
机器学习/深度学习 API Python
Python 高级编程与实战:深入理解网络编程与异步IO
在前几篇文章中,我们探讨了 Python 的基础语法、面向对象编程、函数式编程、元编程、性能优化、调试技巧、数据科学、机器学习、Web 开发和 API 设计。本文将深入探讨 Python 在网络编程和异步IO中的应用,并通过实战项目帮助你掌握这些技术。
|
3月前
|
安全 Linux 网络安全
利用Python脚本自动备份网络设备配置
通过本文的介绍,我们了解了如何利用Python脚本自动备份网络设备配置。该脚本使用 `paramiko`库通过SSH连接到设备,获取并保存配置文件。通过定时任务调度,可以实现定期自动备份,确保网络设备配置的安全和可用。希望这些内容能够帮助你在实际工作中实现网络设备的自动化备份。
114 14

热门文章

最新文章

下一篇
oss创建bucket