This is it.
from imapclient import IMAPClient
import pyzmail
import base64
import re
import time
import os
test_num = []
happy_days = []
attachment_all = []
hostname = "mail.server.com"
username = "[email protected]"
mail_password = "xxxxxxxxxxxxxxxxxxx"
server = IMAPClient(hostname, use_uid=True, ssl=False)
def server_login():
try:
server.login(username, mail_password)
server.select_folder('Inbox')
except server.Error as e:
print('Could not log in: ', e)
def get_messages_processed():
message_ids = server.search(u'UNSEEN')
if message_ids is None:
return
else:
for messages in message_ids:
raw_message = server.fetch([messages], ['BODY[]', 'FLAGS'])
message = pyzmail.PyzMessage.factory(raw_message[messages][b'BODY[]'])
temp_message = str(message.get_payload(1))
test_num.append(temp_message)
check_name = [x for x in test_num if "name=stockreport.txt" in x]
for attachment in check_name:
bingo = str(attachment.split('\n\n', 1)[1])
happy_days.append(bingo)
return happy_days
def prep_print():
for item in happy_days:
the_real_deal = str(base64.b64decode(item).decode("utf8"))
# print(the_real_deal)
testing_the_split = re.split('[\t\r\n]+', the_real_deal)
# print(testing_the_split)
# list_of_lists = [list(elem) for elem in the_real_deal]
# print(list_of_lists)
header_list = testing_the_split[:3]
parts_list = testing_the_split[7:]
print("_" * 45, file=open("output.txt", "a"))
print("| Job Number: " + header_list[0],
" " * (25 - len(header_list[0])) + "| ",
file=open("output.txt", "a", encoding="utf-8"))
print("| Job Name: " + header_list[1],
" " * (18 - len(header_list[1])) + "| ",
file=open("output.txt", "a"))
print("| Job Location: " + header_list[2],
" " * (17 - len(header_list[2])) + "| ",
file=open("output.txt", "a"))
print("*" * 45, file=open("output.txt", "a"))
print("| Loc | Part #", " " * (17) + "| Qty |", file=open("output.txt", "a"))
while parts_list:
for p in parts_list:
number_parts = parts_list[0]
part_number = parts_list[1]
part_qty = parts_list[3]
part_dec = parts_list[2]
print("| " + number_parts,
" " * (4 - len(number_parts)) + "| "
+ part_number,
" " * (23 - len(part_number)) + "| "
+ part_qty,
" " * (10 - len(part_qty)) + "|",
file=open("output.txt", "a+"))
print("| Dec: " + part_dec, file=open("output.txt", "a+"))
del parts_list[:3]
print("there was " + header_list[0])
return
# os.system("C:/Users/Kingdel/PycharmProjects/ScannerMailHandler/printanddelete.exe")
time.sleep(5)