#python
Вопрос:
Я уже установил пакет pywin32, файл python работает нормально. Но когда я распаковываю этот файл(использовал py2exe) и запускаю программу, появляется ошибка «ModuleNotFoundError: нет модуля с именем «pythoncom»«.
Я также попробовал следующие способы, но все еще не решил.
- импортируйте pythoncom в файл python.
- скопируйте эти файлы из ‘C:UsersXXXAppDataLocalProgramsPythonPython39Libsite-packagespywin32_system32″ чтобы C:WindowsSystem32pythoncom39.dll, pywintypes39.dll.
- добавьте параметры в настройки
file(options={'py2exe': {"includes": ['pythoncom', 'lxml._elementpath', 'win32com', 'pywintypes']}})
сообщение об ошибке: D:XXXdist>XXX.exe Обратная связь (последний последний вызов): Файл «readExcel_sendMail.py», строка 4, в файле «», строка 259, в файле load_module «win32com_>init_.pyc», строка 6, в ModuleNotFoundError: Нет модуля с именем «pythoncom»
Более того, я обнаружил, что папка dist имеет ‘pythoncom39.dll» файл, я не знаю, почему в нем эта ошибка. как я могу это исправить?
Когда я импортирую win32com, exe-файл получит сообщение об ошибке. например):
import win32com.client as win32
def send_mail():
outlook = win32.Dispatch('Outlook.Application')
mail_item = outlook.CreateItem(0)
mail_item.Recipients.Add('XXX@xx.com;')
mail_item.Subject = 'Mail Test'
mail_item.Send()
if __name__ == '__main__':
send_mail()
Комментарии:
1. Мне непонятно, что вы пытаетесь сделать. Пожалуйста, предоставьте код для воспроизведения
ModuleNotFoundError
.2. когда я импортирую win32com в свой файл python, exe-файл получит сообщение об ошибке. например): импорт win32com.client как win32 def send_mail(): outlook = win32.Dispatch(‘Outlook. Приложение’) mail_item = outlook. Создайте элемент(0) mail_item.Получатели. Добавить(‘XXX@xx.com;’) mail_item.Subject = ‘Проверка почты’ mail_item. Отправить (), если имя == ‘ основной ‘: send_mail()
Ответ №1:
Попробуй
pip install pypiwin32
или
pip3 install pypiwin32
Комментарии:
1. установка pip3 pypiwin32 по-прежнему не решает эту проблему.