xenoslib 0.1.29.8__py3-none-any.whl → 0.1.29.10__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
xenoslib/about.py CHANGED
@@ -4,4 +4,4 @@ __url__ = "https://github.com/XenosLu/xenoslib.git"
4
4
  __author__ = "Xenocider"
5
5
  __author_email__ = "xenos.lu@gmail.com"
6
6
  __license__ = "MIT License"
7
- __version__ = "0.1.29.8"
7
+ __version__ = "0.1.29.10"
xenoslib/mail.py CHANGED
@@ -72,9 +72,17 @@ class MailFetcher:
72
72
  continue
73
73
  body = email.message_from_bytes(msg[b"BODY[]"])
74
74
  subject = str(email.header.make_header(email.header.decode_header(body["Subject"])))
75
- payload = body.get_payload(decode=True)
76
- if payload:
77
- payload = payload.decode()
75
+ if body.is_multipart():
76
+ for part in body.walk():
77
+ if "text/plain" in part.get_content_type():
78
+ payload = part.get_payload(decode=True)
79
+ else:
80
+ payload = body.get_payload(decode=True)
81
+ if isinstance(payload, bytes):
82
+ try:
83
+ payload = payload.decode()
84
+ except UnicodeDecodeError:
85
+ payload = payload.decode("latin1") # failover decode
78
86
  body["raw"] = msg[b"BODY[]"]
79
87
  body["subjectx"] = subject
80
88
  body["payload"] = payload
@@ -158,9 +166,12 @@ def test_imap():
158
166
  mail_addr = os.environ["IMAP_ADDR"]
159
167
  mail_pwd = os.environ["IMAP_PASS"]
160
168
  for email_data in MailFetcher(
161
- imap_server, mail_addr, mail_pwd, interval=1, days=30, skip_current=True
169
+ imap_server, mail_addr, mail_pwd, interval=1, days=1, skip_current=False
162
170
  ):
163
- print(email_data["subject"])
171
+ # ~ print(email_data["subject"])
172
+ print(email_data["subjectx"])
173
+ print(email_data["payload"])
174
+ # ~ print(email_data.keys())
164
175
 
165
176
 
166
177
  def test():
@@ -179,5 +190,5 @@ def test():
179
190
 
180
191
 
181
192
  if __name__ == "__main__":
182
- # test_imap()
183
- test()
193
+ test_imap()
194
+ # ~ test()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: xenoslib
3
- Version: 0.1.29.8
3
+ Version: 0.1.29.10
4
4
  Summary: Xenos' common lib
5
5
  Home-page: https://github.com/XenosLu/xenoslib.git
6
6
  Author: Xenocider
@@ -1,17 +1,17 @@
1
1
  xenoslib/__init__.py,sha256=vlMWwdD2gTb9ztpm_orYAm_Y0Be0Es64ifvMQwrE1jU,310
2
2
  xenoslib/__main__.py,sha256=UpD3pl4l5ZUFxK6FzNMWRb1AZpEnwerulSFoPb_Pdgw,307
3
- xenoslib/about.py,sha256=IdFMEXAoQX4YJFFPpAXcO_24by_xVnvei8okUnig8RY,231
3
+ xenoslib/about.py,sha256=vLAHaOndJtv-RZfnpEY6TVM1VAEUj-WKdPK4SHMWiAs,232
4
4
  xenoslib/base.py,sha256=yylMYrF5F-bY4ncdo5bCyImjy7OkBAz5YWMGdZNV3rY,12377
5
5
  xenoslib/dev.py,sha256=R6iwKuu-xvaYiBOUyP2gpePyvXss17TOZaCmQEihPCw,1236
6
6
  xenoslib/extend.py,sha256=LSzcBafyyLn1H_rwyLqGtTPqL18EDHC01_YxCsyCPLY,5887
7
7
  xenoslib/linux.py,sha256=EFCQBq_JsmNJc3wGlJlzH9W0tjOA7sSwx0u62R5Ut2k,1318
8
- xenoslib/mail.py,sha256=XVHCvLrcFzbUlZ58Swk9xdGCs4X9qeSzAU_UnEgaq4w,6225
8
+ xenoslib/mail.py,sha256=djPJLsCf3VOZm7h9MkgnW1vOJaStI8PA5ElZC7sd0co,6731
9
9
  xenoslib/mock.py,sha256=iNIplO7clejqLWfpY4r0WQH5BULy9dCoolDenZEci0c,3572
10
10
  xenoslib/onedrive.py,sha256=-bJJ8Cd_RjJSlDynYqKoZlFKE1HHM34l6NXOQrWOwtg,7783
11
11
  xenoslib/win_trayicon.py,sha256=7GJwX3c2CS1XWQjsyDK5EfM-MmEHdzPJCTX2sGpWmuU,13115
12
12
  xenoslib/windows.py,sha256=lUTD7TowaPqYHgIL6b-GM9PLd-VyJNNGzkzC3K9vOxo,4080
13
- xenoslib-0.1.29.8.dist-info/LICENSE,sha256=lF6hjufhiR-xAje_Wo7ogxV5phz2d5TgkfL5SGshujg,1066
14
- xenoslib-0.1.29.8.dist-info/METADATA,sha256=_0pb-H2JEWNuNv1uattKpC8lbHu502O0x865XNkpzSM,709
15
- xenoslib-0.1.29.8.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
16
- xenoslib-0.1.29.8.dist-info/top_level.txt,sha256=Rfm4GdW0NyA2AHDNUF2wFQOfAo53mAPibddSHGd3X60,9
17
- xenoslib-0.1.29.8.dist-info/RECORD,,
13
+ xenoslib-0.1.29.10.dist-info/LICENSE,sha256=lF6hjufhiR-xAje_Wo7ogxV5phz2d5TgkfL5SGshujg,1066
14
+ xenoslib-0.1.29.10.dist-info/METADATA,sha256=5824FgOhpyPYX-CX8aryZtgGl6Oa39sjOgqL0Sqibjg,710
15
+ xenoslib-0.1.29.10.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
16
+ xenoslib-0.1.29.10.dist-info/top_level.txt,sha256=Rfm4GdW0NyA2AHDNUF2wFQOfAo53mAPibddSHGd3X60,9
17
+ xenoslib-0.1.29.10.dist-info/RECORD,,