本文整理汇总了Python中email.Utils.formataddr方法的典型用法代码示例。如果您正苦于以下问题:Python Utils.formataddr方法的具体用法?Python Utils.formataddr怎么用?Python Utils.formataddr使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类email.Utils
的用法示例。
在下文中一共展示了Utils.formataddr方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: addr_header_encode
# 需要导入模块: from email import Utils [as 别名]
# 或者: from email.Utils import formataddr [as 别名]
def addr_header_encode(text, header_name=None):
"""Encode and line-wrap the value of an email header field containing
email addresses."""
# Convert to unicode, if required.
if not isinstance(text, unicode):
text = unicode(text, "utf-8")
text = ", ".join(
formataddr((header_encode(name), emailaddr))
for name, emailaddr in getaddresses([text])
)
if is_ascii(text):
charset = "ascii"
else:
charset = "utf-8"
return Header(
text, header_name=header_name, charset=Charset(charset)
).encode()
示例2: sanitize_address
# 需要导入模块: from email import Utils [as 别名]
# 或者: from email.Utils import formataddr [as 别名]
def sanitize_address(addr, encoding):
if isinstance(addr, basestring):
addr = parseaddr(force_unicode(addr))
nm, addr = addr
nm = str(Header(nm, encoding))
try:
addr = addr.encode('ascii')
except UnicodeEncodeError: # IDN
if u'@' in addr:
localpart, domain = addr.split(u'@', 1)
localpart = str(Header(localpart, encoding))
domain = domain.encode('idna')
addr = '@'.join([localpart, domain])
else:
addr = str(Header(addr, encoding))
return formataddr((nm, addr))
示例3: set_recipients
# 需要导入模块: from email import Utils [as 别名]
# 或者: from email.Utils import formataddr [as 别名]
def set_recipients(self, name, value):
self.unset_all(name)
for pair in getaddresses([value]):
self.add(name, formataddr(pair))
示例4: get_fromaddr
# 需要导入模块: from email import Utils [as 别名]
# 或者: from email.Utils import formataddr [as 别名]
def get_fromaddr(self, change=None):
config = Config("user")
fromname = config.get("name", default="")
fromemail = config.get("email", default="")
if fromemail:
return formataddr([fromname, fromemail])
return self.get_sender()
示例5: test_parseaddr_empty
# 需要导入模块: from email import Utils [as 别名]
# 或者: from email.Utils import formataddr [as 别名]
def test_parseaddr_empty(self):
self.assertEqual(Utils.parseaddr('<>'), ('', ''))
self.assertEqual(Utils.formataddr(Utils.parseaddr('<>')), '')
示例6: test_noquote_dump
# 需要导入模块: from email import Utils [as 别名]
# 或者: from email.Utils import formataddr [as 别名]
def test_noquote_dump(self):
self.assertEqual(
Utils.formataddr(('A Silly Person', 'person@dom.ain')),
'A Silly Person <person@dom.ain>')
示例7: test_escape_dump
# 需要导入模块: from email import Utils [as 别名]
# 或者: from email.Utils import formataddr [as 别名]
def test_escape_dump(self):
self.assertEqual(
Utils.formataddr(('A (Very) Silly Person', 'person@dom.ain')),
r'"A \(Very\) Silly Person" <person@dom.ain>')
a = r'A \(Special\) Person'
b = 'person@dom.ain'
self.assertEqual(Utils.parseaddr(Utils.formataddr((a, b))), (a, b))
示例8: test_escape_backslashes
# 需要导入模块: from email import Utils [as 别名]
# 或者: from email.Utils import formataddr [as 别名]
def test_escape_backslashes(self):
self.assertEqual(
Utils.formataddr(('Arthur \Backslash\ Foobar', 'person@dom.ain')),
r'"Arthur \\Backslash\\ Foobar" <person@dom.ain>')
a = r'Arthur \Backslash\ Foobar'
b = 'person@dom.ain'
self.assertEqual(Utils.parseaddr(Utils.formataddr((a, b))), (a, b))
示例9: test_name_with_dot
# 需要导入模块: from email import Utils [as 别名]
# 或者: from email.Utils import formataddr [as 别名]
def test_name_with_dot(self):
x = 'John X. Doe <jxd@example.com>'
y = '"John X. Doe" <jxd@example.com>'
a, b = ('John X. Doe', 'jxd@example.com')
self.assertEqual(Utils.parseaddr(x), (a, b))
self.assertEqual(Utils.parseaddr(y), (a, b))
# formataddr() quotes the name if there's a dot in it
self.assertEqual(Utils.formataddr((a, b)), y)