在gmail上发送python Dataframe

vd2z7a6w  于 2021-09-08  发布在  Java
关注(0)|答案(0)|浏览(183)
df2 = price_list_email.copy()
reps = df2['sales_rep']. unique()
sender_address = 'hewagegayanpriyadarshana@gmail.com'
sender_pass = '******'
cc = 'fa@freshharvests.com'

for i in reps:
  if i == 'Chamal Hewawasam':
    receiver_address = 'fa@freshharvests.com'
    receiver_address = [receiver_address] + [cc]
  elif i == 'Nilan':
    receiver_address = 'fa@freshharvests.com'
    receiver_address = [receiver_address] + [cc]
  elif i == 'Prasanna - HOM':
    receiver_address = 'fa@freshharvests.com'
    receiver_address = [receiver_address] + [cc]
  elif i == 'Inoka':
    receiver_address = 'fa@freshharvests.com'
    receiver_address = [receiver_address] + [cc]
  elif i == 'Retail Sales':
    receiver_address = 'fa@freshharvests.com'
    receiver_address = [receiver_address] + [cc]
  elif i == 'Yohan Vithanage':
    receiver_address = 'fafreshharvests.com'
    receiver_address = [receiver_address] + [cc]
  elif i == 'Danushka':
    receiver_address = 'fafreshharvests.com'
    receiver_address = [receiver_address] + [cc]           

  #create the data frame with sales rep
  f3 = df2[df2['sales_rep'] == i]

  #f3_html = f3.to_html()

  msg = MIMEMultipart()

  msg['Subject'] = 'Price Changes ' + datetime.today().strftime('%Y-%m-%d')
  msg['From'] = sender_address
  msg['To'] = receiver_address

  html = """\
  <html>
    <head></head>
    <body>
      {0}
    </body>
  </html>
  """.format(f3.to_html())

  part1 = MIMEText(html, 'html')
  msg.attach(part1)

  session = smtplib.SMTP('smtp.gmail.com', 587) #use gmail with port
  session.ehlo()
  session.starttls()
  session.login(sender_address, sender_pass) #login with mail_id and password

  session.sendmail(sender_address, receiver_address, msg.as_string()) 

  print('Mail Sent to ' + i)

session.quit()

我总是犯错误。它闯进来了

session.sendmail(sender_address, receiver_address, msg.as_string())

'list' object has no attribute 'encode'

我想在gmail上发送dataframe作为表,请帮助我解决这个问题

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题