Как проверить путь к файлу, который я создал в Python - PullRequest
1 голос
/ 11 октября 2019

Я создал почтовый почтовый ящик, который создает документ, называет документ именем из Excel, хранящимся в переменной, и прикрепляет его к электронному письму. Как только это будет сделано, он отправит электронное письмо.

Я застреваю на pywintypes.com_error: это останавливает меня, прикрепляя документ, потому что имя файла не может быть найдено, но я не уверен, что делаю неправильно, я думал, что это кодировка /проблема с декодированием, но мне просто не повезло, пройдя через это

# Stores each individual's information in the variables below
        first_name = row[2].value
        last_name = row[1].value
        full_name = row[2].value + " " + row[1].value
        renewal_date_value = row[4].value
        renewal_date = renewal_date_value.strftime('%m/%d/%Y')
        email = row[3].value
        ncbfaa_id = str(row[0].value)
        # Opens outlook
        outlook = win32.Dispatch('outlook.application')
        # Gets email ready
        mail = outlook.CreateItem(0)

        mail.To = email

        mail.Subject = '2019'

        #Plain Text Message
        plaintext_body = ccs_plaintext_message.replace('{first_name}', first_name.encode('utf-8')) # lavon
        mail.Body = plaintext_body.replace('{renewal_date}', renewal_date)

        #HTML Message

        html_body = ccs_html_message.replace('{first_name}', first_name.encode('utf-8')) # lavon
        html_body2 = html_body.replace('{id}', ncbfaa_id)
        mail.HTMLBody = html_body2.replace('{renewal_date}', renewal_date)



        attachment = "C:\\Users\Education\Documents\D\Python\Email\\2019_CCS_Renewal\"" + full_name + ".pdf"
        attachment2 = "C:\\Users\Education\Documents\LTowns\CES CCS Supplimetary Documents\CCS Designation Statement of Use.pdf"
        #mail.Attachments.Add(Source=attachment)
        #mail.Attachments.Add(Source=attachment2)
        mail.Attachments.Add(Source=attachment)
        mail.Attachments.Add(Source= "C:\\Users\Education\Documents\LTowns\CES CCS Supplimetary Documents\CCS Designation Statement of Use.pdf")


        mail.Send()
        print("Email sent to " + full_name)

Я ожидал, что документ будет создан и будет динамически назван, а затем присоединен, но я получаю эту ошибку ниже

main.py
Traceback (most recent call last):
  File "C:\Users\Education\Documents\DDonnelly\Python\Email\2019_CCS_Renewal\main.py", line 11, in <module>
    mailer()
  File "C:\Users\Education\Documents\DDonnelly\Python\Email\2019_CCS_Renewal\ccs_renewal_mailer.py", line 50, in mailer
    mail.Attachments.Add(Source=attachment)
  File "<COMObject <unknown>>", line 3, in Add
pywintypes.com_error: (-2147352567, 'Exception occurred.', (4096, u'Microsoft Outlook', u'Cannot find this file. Verify the path and file name are correct.', None, 0, -2147024894), None)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...