Files
hustoj/web/python-docs/library/email.errors.html
2025-03-09 17:10:56 +08:00

323 lines
23 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="zh_CN">
<head>
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
<title>email.errors: 异常和缺陷类 &#8212; Python 3.8.20 文档</title><meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="../_static/pydoctheme.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
<script src="../_static/jquery.js"></script>
<script src="../_static/underscore.js"></script>
<script src="../_static/doctools.js"></script>
<script src="../_static/language_data.js"></script>
<script src="../_static/translations.js"></script>
<script src="../_static/sidebar.js"></script>
<link rel="search" type="application/opensearchdescription+xml"
title="在 Python 3.8.20 文档 中搜索"
href="../_static/opensearch.xml"/>
<link rel="author" title="关于这些文档" href="../about.html" />
<link rel="index" title="索引" href="../genindex.html" />
<link rel="search" title="搜索" href="../search.html" />
<link rel="copyright" title="版权所有" href="../copyright.html" />
<link rel="next" title="email.headerregistry: 自定义标头对象" href="email.headerregistry.html" />
<link rel="prev" title="email.policy: Policy 对象" href="email.policy.html" />
<link rel="canonical" href="https://docs.python.org/3/library/email.errors.html" />
<style>
@media only screen {
table.full-width-table {
width: 100%;
}
}
</style>
<link rel="shortcut icon" type="image/png" href="../_static/py.svg" />
<script type="text/javascript" src="../_static/copybutton.js"></script>
<script type="text/javascript" src="../_static/menu.js"></script>
</head>
<body>
<div class="mobile-nav">
<input type="checkbox" id="menuToggler" class="toggler__input" aria-controls="navigation"
aria-pressed="false" aria-expanded="false" role="button" aria-label="Menu" />
<label for="menuToggler" class="toggler__label">
<span></span>
</label>
<nav class="nav-content" role="navigation">
<a href="https://www.python.org/" class="nav-logo">
<img src="../_static/py.svg" alt="Logo"/>
</a>
<div class="version_switcher_placeholder"></div>
<form role="search" class="search" action="../search.html" method="get">
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" class="search-icon">
<path fill-rule="nonzero"
d="M15.5 14h-.79l-.28-.27a6.5 6.5 0 001.48-5.34c-.47-2.78-2.79-5-5.59-5.34a6.505 6.505 0 00-7.27 7.27c.34 2.8 2.56 5.12 5.34 5.59a6.5 6.5 0 005.34-1.48l.27.28v.79l4.25 4.25c.41.41 1.08.41 1.49 0 .41-.41.41-1.08 0-1.49L15.5 14zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z" fill="#444"></path>
</svg>
<input type="text" name="q" aria-label="快速搜索"/>
<input type="submit" value="转向"/>
</form>
</nav>
<div class="menu-wrapper">
<nav class="menu" role="navigation" aria-label="main navigation">
<div class="language_switcher_placeholder"></div>
<h4>上一个主题</h4>
<p class="topless"><a href="email.policy.html"
title="上一章"><code class="xref py py-mod docutils literal notranslate"><span class="pre">email.policy</span></code>: Policy 对象</a></p>
<h4>下一个主题</h4>
<p class="topless"><a href="email.headerregistry.html"
title="下一章"><code class="xref py py-mod docutils literal notranslate"><span class="pre">email.headerregistry</span></code>: 自定义标头对象</a></p>
<div role="note" aria-label="source link">
<h3>本页</h3>
<ul class="this-page-menu">
<li><a href="../bugs.html">报告 Bug</a></li>
<li>
<a href="https://github.com/python/cpython/blob/3.8/Doc/library/email.errors.rst"
rel="nofollow">显示源代码
</a>
</li>
</ul>
</div>
</nav>
</div>
</div>
<div id="outdated-warning" style="padding: .5em; text-align: center; background-color: #FFBABA; color: #6A0E0E;">
这个文档所针对的是一个已不再受支持的 Python 旧版本。
你应当升级版本,并阅读
<a href="/3/library/email.errors.html"> Python 当前稳定版本的文档</a>.
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>导航</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="总目录"
accesskey="I">索引</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python 模块索引"
>模块</a> |</li>
<li class="right" >
<a href="email.headerregistry.html" title="email.headerregistry: 自定义标头对象"
accesskey="N">下一页</a> |</li>
<li class="right" >
<a href="email.policy.html" title="email.policy: Policy 对象"
accesskey="P">上一页</a> |</li>
<li><img src="../_static/py.svg" alt="python logo" style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="https://www.python.org/">Python</a> &#187;</li>
<li class="switchers">
<div class="language_switcher_placeholder"></div>
<div class="version_switcher_placeholder"></div>
</li>
<li>
</li>
<li id="cpython-language-and-version">
<a href="../index.html">3.8.20 Documentation</a> &#187;
</li>
<li class="nav-item nav-item-1"><a href="index.html" >Python 标准库</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="netdata.html" >互联网数据处理</a> &#187;</li>
<li class="nav-item nav-item-3"><a href="email.html" accesskey="U"><code class="xref py py-mod docutils literal notranslate"><span class="pre">email</span></code> --- 电子邮件与 MIME 处理包</a> &#187;</li>
<li class="right">
<div class="inline-search" role="search">
<form class="inline-search" action="../search.html" method="get">
<input placeholder="快速搜索" aria-label="快速搜索" type="text" name="q" />
<input type="submit" value="转向" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
|
</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<section id="module-email.errors">
<span id="email-errors-exception-and-defect-classes"></span><h1><a class="reference internal" href="#module-email.errors" title="email.errors: The exception classes used by the email package."><code class="xref py py-mod docutils literal notranslate"><span class="pre">email.errors</span></code></a>: 异常和缺陷类<a class="headerlink" href="#module-email.errors" title="永久链接至标题"></a></h1>
<p><strong>源代码:</strong> <a class="reference external" href="https://github.com/python/cpython/tree/3.8/Lib/email/errors.py">Lib/email/errors.py</a></p>
<hr class="docutils" />
<p>以下异常类在 <a class="reference internal" href="#module-email.errors" title="email.errors: The exception classes used by the email package."><code class="xref py py-mod docutils literal notranslate"><span class="pre">email.errors</span></code></a> 模块中定义:</p>
<dl class="exception">
<dt id="email.errors.MessageError">
<em class="property">exception </em><code class="sig-prename descclassname">email.errors.</code><code class="sig-name descname">MessageError</code><a class="headerlink" href="#email.errors.MessageError" title="永久链接至目标"></a></dt>
<dd><p>这是 <a class="reference internal" href="email.html#module-email" title="email: Package supporting the parsing, manipulating, and generating email messages."><code class="xref py py-mod docutils literal notranslate"><span class="pre">email</span></code></a> 包可以引发的所有异常的基类。 它源自标准异常 <a class="reference internal" href="exceptions.html#Exception" title="Exception"><code class="xref py py-exc docutils literal notranslate"><span class="pre">Exception</span></code></a> 类,这个类没有定义其他方法。</p>
</dd></dl>
<dl class="exception">
<dt id="email.errors.MessageParseError">
<em class="property">exception </em><code class="sig-prename descclassname">email.errors.</code><code class="sig-name descname">MessageParseError</code><a class="headerlink" href="#email.errors.MessageParseError" title="永久链接至目标"></a></dt>
<dd><p>这是由 <a class="reference internal" href="email.parser.html#email.parser.Parser" title="email.parser.Parser"><code class="xref py py-class docutils literal notranslate"><span class="pre">Parser</span></code></a> 类引发的异常的基类。它派生自 <a class="reference internal" href="#email.errors.MessageError" title="email.errors.MessageError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">MessageError</span></code></a><a class="reference internal" href="email.headerregistry.html#module-email.headerregistry" title="email.headerregistry: Automatic Parsing of headers based on the field name"><code class="xref py py-mod docutils literal notranslate"><span class="pre">headerregistry</span></code></a> 使用的解析器也在内部使用这个类。</p>
</dd></dl>
<dl class="exception">
<dt id="email.errors.HeaderParseError">
<em class="property">exception </em><code class="sig-prename descclassname">email.errors.</code><code class="sig-name descname">HeaderParseError</code><a class="headerlink" href="#email.errors.HeaderParseError" title="永久链接至目标"></a></dt>
<dd><p>在解析消息的 <span class="target" id="index-2"></span><a class="rfc reference external" href="https://tools.ietf.org/html/rfc5322.html"><strong>RFC 5322</strong></a> 标头时,某些错误条件下会触发,此类派生自 <a class="reference internal" href="#email.errors.MessageParseError" title="email.errors.MessageParseError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">MessageParseError</span></code></a>。 如果在调用方法时内容类型未知,则 <a class="reference internal" href="email.message.html#email.message.EmailMessage.set_boundary" title="email.message.EmailMessage.set_boundary"><code class="xref py py-meth docutils literal notranslate"><span class="pre">set_boundary()</span></code></a> 方法将引发此错误。 当尝试创建一个看起来包含嵌入式标头的标头时 <a class="reference internal" href="email.header.html#email.header.Header" title="email.header.Header"><code class="xref py py-class docutils literal notranslate"><span class="pre">Header</span></code></a> 可能会针对某些 base64 解码错误引发此错误(也就是说,应该是一个 没有前导空格并且看起来像标题的延续行)。</p>
</dd></dl>
<dl class="exception">
<dt id="email.errors.BoundaryError">
<em class="property">exception </em><code class="sig-prename descclassname">email.errors.</code><code class="sig-name descname">BoundaryError</code><a class="headerlink" href="#email.errors.BoundaryError" title="永久链接至目标"></a></dt>
<dd><p>已弃用和不再使用的。</p>
</dd></dl>
<dl class="exception">
<dt id="email.errors.MultipartConversionError">
<em class="property">exception </em><code class="sig-prename descclassname">email.errors.</code><code class="sig-name descname">MultipartConversionError</code><a class="headerlink" href="#email.errors.MultipartConversionError" title="永久链接至目标"></a></dt>
<dd><p>当使用 <code class="xref py py-meth docutils literal notranslate"><span class="pre">add_payload()</span></code> 将有效负载添加到 <a class="reference internal" href="email.compat32-message.html#email.message.Message" title="email.message.Message"><code class="xref py py-class docutils literal notranslate"><span class="pre">Message</span></code></a> 对象时,有效负载已经是一个标量,而消息的 <em class="mailheader">Content-Type</em> 主类型不是 <em class="mimetype">multipart</em> 或者缺少时触发该异常。 <a class="reference internal" href="#email.errors.MultipartConversionError" title="email.errors.MultipartConversionError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">MultipartConversionError</span></code></a> 多重继承自 <a class="reference internal" href="#email.errors.MessageError" title="email.errors.MessageError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">MessageError</span></code></a> 和内置的 <a class="reference internal" href="exceptions.html#TypeError" title="TypeError"><code class="xref py py-exc docutils literal notranslate"><span class="pre">TypeError</span></code></a></p>
<p>由于 <code class="xref py py-meth docutils literal notranslate"><span class="pre">Message.add_payload()</span></code> 已被弃用,此异常实际上极少会被引发。 但是如果在派生自 <a class="reference internal" href="email.mime.html#email.mime.nonmultipart.MIMENonMultipart" title="email.mime.nonmultipart.MIMENonMultipart"><code class="xref py py-class docutils literal notranslate"><span class="pre">MIMENonMultipart</span></code></a> 的类 (例如 <a class="reference internal" href="email.mime.html#email.mime.image.MIMEImage" title="email.mime.image.MIMEImage"><code class="xref py py-class docutils literal notranslate"><span class="pre">MIMEImage</span></code></a>) 的实例上调用 <a class="reference internal" href="email.compat32-message.html#email.message.Message.attach" title="email.message.Message.attach"><code class="xref py py-meth docutils literal notranslate"><span class="pre">attach()</span></code></a> 方法也可以引发此异常。</p>
</dd></dl>
<dl class="exception">
<dt id="email.errors.HeaderWriteError">
<em class="property">exception </em><code class="sig-prename descclassname">email.errors.</code><code class="sig-name descname">HeaderWriteError</code><a class="headerlink" href="#email.errors.HeaderWriteError" title="永久链接至目标"></a></dt>
<dd><p><a class="reference internal" href="email.generator.html#module-email.generator" title="email.generator: Generate flat text email messages from a message structure."><code class="xref py py-mod docutils literal notranslate"><span class="pre">generator</span></code></a> 输出标头发生错误时将被引发。</p>
</dd></dl>
<p>以下是 <a class="reference internal" href="email.parser.html#email.parser.FeedParser" title="email.parser.FeedParser"><code class="xref py py-class docutils literal notranslate"><span class="pre">FeedParser</span></code></a> 在解析消息时可发现的缺陷列表。 请注意这些缺陷会在问题被发现时加入到消息中,因此举例来说,如果某条嵌套在 <em class="mimetype">multipart/alternative</em> 中的消息具有错误的标头,该嵌套消息对象就会有一条缺陷,但外层消息对象则没有。</p>
<p>所有缺陷类都是 <code class="xref py py-class docutils literal notranslate"><span class="pre">email.errors.MessageDefect</span></code> 的子类。</p>
<ul>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">NoBoundaryInMultipartDefect</span></code> -- 一条消息宣称有多个部分,但却没有 <em class="mimetype">boundary</em> 形参。</p></li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">StartBoundaryNotFoundDefect</span></code> -- 在 <em class="mailheader">Content-Type</em> 标头中宣称的开始边界无法被找到。</p></li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">CloseBoundaryNotFoundDefect</span></code> -- 找到了开始边界,但相应的结束边界无法被找到。</p>
<div class="versionadded">
<p><span class="versionmodified added">3.3 新版功能.</span></p>
</div>
</li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">FirstHeaderLineIsContinuationDefect</span></code> -- 消息以一个继续行作为其第一个标头行。</p></li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">MisplacedEnvelopeHeaderDefect</span></code> - 在标头块中间发现了一个 &quot;Unix From&quot; 标头。</p></li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">MissingHeaderBodySeparatorDefect</span></code> - 在解析没有前缀空格但又不包含 ':' 的标头期间找到一行内容。 解析将假定该行表示消息体的第一行以继续执行。</p>
<div class="versionadded">
<p><span class="versionmodified added">3.3 新版功能.</span></p>
</div>
</li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">MalformedHeaderDefect</span></code> -- 找到一个缺失了冒号或格式错误的标头。</p>
<div class="deprecated">
<p><span class="versionmodified deprecated">3.3 版后已移除: </span>此缺陷在近几个 Python 版本中已不再使用。</p>
</div>
</li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">MultipartInvariantViolationDefect</span></code> -- 一条消息宣称为 <em class="mimetype">multipart</em>,但无法找到任何子部分。 请注意当一条消息有此缺陷时,其 <a class="reference internal" href="email.compat32-message.html#email.message.Message.is_multipart" title="email.message.Message.is_multipart"><code class="xref py py-meth docutils literal notranslate"><span class="pre">is_multipart()</span></code></a> 方法可能返回 <code class="docutils literal notranslate"><span class="pre">False</span></code>,即使其内容类型宣称为 <em class="mimetype">multipart</em></p></li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">InvalidBase64PaddingDefect</span></code> -- 当解码一个 base64 编码的字节分块时,填充的数据不正确。 虽然添加了足够的填充数据以执行解码,但作为结果的已解码字节串可能无效。</p></li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">InvalidBase64CharactersDefect</span></code> -- 当解码一个 base64 编码的字节分块时,遇到了 base64 字符表以外的字符。 这些字符会被忽略,但作为结果的已解码字节串可能无效。</p></li>
<li><p><code class="xref py py-class docutils literal notranslate"><span class="pre">InvalidBase64LengthDefect</span></code> -- 当解码一个 base64 编码的字节分块时,非填充 base64 字符的数量无效(比 4 的倍数多 1。 已编码分块会保持原样。</p></li>
</ul>
</section>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h4>上一个主题</h4>
<p class="topless"><a href="email.policy.html"
title="上一章"><code class="xref py py-mod docutils literal notranslate"><span class="pre">email.policy</span></code>: Policy 对象</a></p>
<h4>下一个主题</h4>
<p class="topless"><a href="email.headerregistry.html"
title="下一章"><code class="xref py py-mod docutils literal notranslate"><span class="pre">email.headerregistry</span></code>: 自定义标头对象</a></p>
<div role="note" aria-label="source link">
<h3>本页</h3>
<ul class="this-page-menu">
<li><a href="../bugs.html">报告 Bug</a></li>
<li>
<a href="https://github.com/python/cpython/blob/3.8/Doc/library/email.errors.rst"
rel="nofollow">显示源代码
</a>
</li>
</ul>
</div>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="related" role="navigation" aria-label="related navigation">
<h3>导航</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="总目录"
>索引</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python 模块索引"
>模块</a> |</li>
<li class="right" >
<a href="email.headerregistry.html" title="email.headerregistry: 自定义标头对象"
>下一页</a> |</li>
<li class="right" >
<a href="email.policy.html" title="email.policy: Policy 对象"
>上一页</a> |</li>
<li><img src="../_static/py.svg" alt="python logo" style="vertical-align: middle; margin-top: -1px"/></li>
<li><a href="https://www.python.org/">Python</a> &#187;</li>
<li class="switchers">
<div class="language_switcher_placeholder"></div>
<div class="version_switcher_placeholder"></div>
</li>
<li>
</li>
<li id="cpython-language-and-version">
<a href="../index.html">3.8.20 Documentation</a> &#187;
</li>
<li class="nav-item nav-item-1"><a href="index.html" >Python 标准库</a> &#187;</li>
<li class="nav-item nav-item-2"><a href="netdata.html" >互联网数据处理</a> &#187;</li>
<li class="nav-item nav-item-3"><a href="email.html" ><code class="xref py py-mod docutils literal notranslate"><span class="pre">email</span></code> --- 电子邮件与 MIME 处理包</a> &#187;</li>
<li class="right">
<div class="inline-search" role="search">
<form class="inline-search" action="../search.html" method="get">
<input placeholder="快速搜索" aria-label="快速搜索" type="text" name="q" />
<input type="submit" value="转向" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
|
</li>
</ul>
</div>
<div class="footer">
&copy; <a href="../copyright.html">版权所有</a> 2001-2024, Python Software Foundation.
<br />
This page is licensed under the Python Software Foundation License Version 2.
<br />
Examples, recipes, and other code in the documentation are additionally licensed under the Zero Clause BSD License.
<br />
<br />
The Python Software Foundation is a non-profit corporation.
<a href="https://www.python.org/psf/donations/">Please donate.</a>
<br />
<br />
最后更新于 12月 09, 2024.
<a href="https://docs.python.org/3/bugs.html">Found a bug</a>?
<br />
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 2.4.4.
</div>
</body>
</html>