Advertisement
Oleg_Kornilov

рассылка файлов с заголовком v.1.1

Aug 1st, 2016
269
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.92 KB | None | 0 0
  1. import smtplib
  2. from smtplib import SMTP_SSL
  3. from email.mime.base import MIMEBase
  4. from email import encoders
  5. import os
  6. import sys
  7. from email.mime.text import MIMEText
  8. from email.mime.multipart import MIMEBase
  9. from email.mime.multipart import MIMEMultipart
  10. from email.mime.image import MIMEImage
  11. from email.mime.audio import MIMEAudio
  12. from email.header import Header
  13. from base64 import encodebytes
  14. import email
  15. import mimetypes
  16. from email.header import decode_header
  17. import random
  18. import traceback
  19.  
  20.  
  21. def sendFileByFile(path):
  22.    
  23. #список файлов для отправки
  24.     SENDER = 'sender_email'
  25.    
  26.     FILES = ['C://Users/олег/1.txt',
  27.              'C://Users/олег/2.txt',
  28.              'C://Users/олег/3.txt'
  29.     ]
  30.    
  31.     ATTACH = 'C://Users/олег/IP_Kornilov_O.doc'    
  32.    
  33.     EMAILS = ['/////']
  34.  
  35.     for i in EMAILS:
  36.         try:
  37.             print(i)
  38.             path = random.choice(FILES)
  39.             if not os.path.isfile(path):             #является ли путь файлом
  40.                 print("Неверный путь к файлу")
  41.                 break
  42.             else:
  43.                 filename = os.path.basename(ATTACH) #базовое имя пути (эквивалентно os.path.split(path)[1])
  44.                 basename = os.path.basename(ATTACH)
  45.                
  46.     #Compose attachment
  47.             part = MIMEBase('application', "octet-stream")
  48.             part.set_payload(open(ATTACH, "rb").read())    #Set the entire message object’s payload to payload.
  49.             encoders.encode_base64(part) #Encodes the payload into base64 form and sets the Content-Transfer-Encoding header to base64
  50.            
  51.             #Here’s an example:
  52.             #msg.add_header('Content-Disposition', 'attachment', filename='bud.gif')
  53.             # This will add a header that looks like
  54.             #Content-Disposition: attachment; filename="bud.gif"
  55.             part.add_header('Content-Disposition', 'attachment', filename = "%s"
  56.                             % basename)
  57.              
  58.     #Compose message
  59.             msg = MIMEMultipart()
  60.     #Header \\ заголовок письма    
  61.             msg['Subject'] = 'по вопросу экологической документации и прокуратуры (г. Иркутск)'
  62.             msg['From'] = SENDER
  63.             msg['To'] = i
  64.             msg.attach(part)
  65.  
  66.     #Send mail
  67.             smtp = smtplib.SMTP('smtp.mail.ru', 25)
  68.             smtp.ehlo()
  69.             smtp.starttls()
  70.  
  71.             smtp.login(SENDER, 'password')
  72.             smtp.sendmail(SENDER, i, msg.as_string())
  73.             print('%s sent %s' % (path, i))
  74.         except Exception:
  75.             print(''.join(traceback.format_exception(*sys.exc_info())))
  76.             continue
  77.            
  78.                
  79.     print('всё')
  80.  
  81.          
  82.    
  83.    
  84. sendFileByFile('C://Users/олег/IP_Kornilov.doc')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement