{"id":208,"date":"2020-12-09T16:58:57","date_gmt":"2020-12-09T07:58:57","guid":{"rendered":"https:\/\/wp.keaven.cyou\/?p=208"},"modified":"2020-12-09T16:58:57","modified_gmt":"2020-12-09T07:58:57","slug":"poplib%e3%81%a7%e5%88%a9%e7%94%a8%e3%81%97%e3%81%9f%e3%83%a1%e3%83%bc%e3%83%ab%e5%8f%97%e4%bf%a1","status":"publish","type":"post","link":"https:\/\/wp.keaven.cyou\/?p=208","title":{"rendered":"poplib\u3067\u5229\u7528\u3057\u305f\u30e1\u30fc\u30eb\u53d7\u4fe1"},"content":{"rendered":"<pre class=\"language-python line-numbers\"><code># coding: utf-8\r\n\r\nimport time\r\nimport poplib\r\nimport email\r\nfrom email.header import decode_header\r\n\r\n# \u30d8\u30c3\u30c0\u60c5\u5831\u53d6\u5f97\r\ndef get_header(msg, name):\r\n\theader = ''\r\n\tif msg[name]:\r\n\t\tfor tup in decode_header(str(msg[name])):\r\n\t\t\tif type(tup[0]) is bytes:\r\n\t\t\t\tcharset = tup[1]\r\n\t\t\t\tif charset:\r\n\t\t\t\t\theader += tup[0].decode(tup[1])\r\n\t\t\t\telse:\r\n\t\t\t\t\theader += tup[0].decode()\r\n\t\t\telif type(tup[0]) is str:\r\n\t\t\t\t\theader += tup[0]\r\n\treturn header\r\n\r\n# \u53d7\u4fe1\u65e5\u6642\r\ndef get_date(msg):\r\n\tmdate = email.utils.parsedate(msg.get('date'))\r\n\treturn time.strftime('%Y\/%m\/%d %H:%M:%S', mdate)\r\n\r\n# body\u60c5\u5831\r\ndef get_content(msg):\r\n\tif msg.is_multipart() is True:\r\n\t\trst = \"\"\r\n\t\tfor part in msg.walk():\r\n\t\t\tpayload = part.get_payload(decode=True)\r\n\t\t\tif payload is None:\r\n\t\t\t\tcontinue\r\n\t\t\tcharset = part.get_content_charset()\r\n\t\t\tif charset is not None:\r\n\t\t\t\tpayload = payload.decode(charset, \"ignore\")\r\n\t\t\trst += str(payload)\r\n\t\treturn rst\r\n\telse:\r\n\t\tcharset = msg.get_content_charset()\r\n\t\tpayload = msg.get_payload(decode=True)\r\n\t\ttry:\r\n\t\t\tif payload:\r\n\t\t\t\tif charset:\r\n\t\t\t\t\treturn payload.decode(charset)\r\n\t\t\t\telse:\r\n\t\t\t\t\treturn payload.decode()\r\n\t\t\telse:\r\n\t\t\t\treturn \"\"\r\n\t\texcept:\r\n\t\t\treturn payload\r\n\r\n# \u30b5\u30fc\u30d0\u306b\u63a5\u7d9a\r\ncli = poplib.POP3('www.example.com')\r\n\r\n# \u8a8d\u8a3c\r\ncli.user('\u30e6\u30fc\u30b6ID')\r\ncli.pass_('\u30d1\u30b9\u30ef\u30fc\u30c9')\r\n\r\n# \u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u5185\u306e\u30e1\u30fc\u30eb\u306e\u7dcf\u6570\u3092\u53d6\u5f97\r\ncount = cli.stat()[0]\r\n\r\nfor i in range(count):\r\n\tno = i + 1\r\n\tcontent = cli.retr(no)[1]\r\n\tmsg = email.message_from_bytes(b'\\r\\n'.join(content))\r\n\r\n\tprint(get_header(msg, 'from'))\r\n\tprint(get_header(msg, 'subject'))\r\n\tprint(get_date(msg))\r\n\tprint(get_content(msg))\r\n\r\n\t# \u524a\u9664\r\n\t# cli.dele(no)<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p># coding: utf-8 import time import poplib import email from email.header import decode_header # \u30d8\u30c3\u30c0\u60c5\u5831\u53d6\u5f97 def ge &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/wp.keaven.cyou\/?p=208\" class=\"more-link\"><span class=\"screen-reader-text\">&#8220;poplib\u3067\u5229\u7528\u3057\u305f\u30e1\u30fc\u30eb\u53d7\u4fe1&#8221; \u306e<\/span>\u7d9a\u304d\u3092\u8aad\u3080<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=\/wp\/v2\/posts\/208"}],"collection":[{"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=208"}],"version-history":[{"count":1,"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=\/wp\/v2\/posts\/208\/revisions"}],"predecessor-version":[{"id":209,"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=\/wp\/v2\/posts\/208\/revisions\/209"}],"wp:attachment":[{"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=208"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=208"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp.keaven.cyou\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=208"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}