Скрипт отправляет пустое значение переменной на E-mail
Есть скрипт, который отправляет не пустую переменную только в случае except, а если файл нормально читается, то текст файла записывается в переменную, но сообщение приходит пустое.
import smtplib
try:
f = open("statistic.txt")
g = f.read()
f.close()
g1 = str(g)
except Exception:
g1 = "Error File!!!"
finally:
server = smtplib.SMTP('smtp.gmail.com: 587')
server.starttls()
server.login('[email protected]', '23hdfskjdfui43hj')
server.sendmail('[email protected]', '[email protected]', g1)
print(g1)
server.close()
Результат:
C:\Users\46456\AppData\Local\Programs\Python\Python37\python.exe F:/GD/dev_ri/statistic.py Iteration: 8 Process finished with exit code 0
Хотя есть похожий скрипт, который полностью отрабатывает алгоритм:
import datetime
import platform
import smtplib
now = datetime.datetime.now()
os = platform.platform()
pr = platform.processor()
nd = now.year, now.month, now.day, now.hour, now.minute
nds = str(nd)
print(nds)
print(os)
print(pr)
s = nds + '\n' + os + '\n' + pr + '\n' + 'r_s'
server = smtplib.SMTP('smtp.gmail.com: 587')
server.starttls()
server.login('[email protected]', '23hdfskjdfui43hj')
server.sendmail('[email protected]', '[email protected]', s)