Я собираюсь создать отдельный исполняемый файл Python, который будет использовать интерпретатор Python в Windows (я не хочу создавать exe-файл).
Итак, я' Я использовал эту полезную статью:
https://n8henrie.com/2022/08/easily-cre ... e_vignette
Мой скрипт, который использует Python pywin32 для преобразования Word в PDF,
После выполнения этой команды:
Код: Выделить всё
> python -m pip install -t myapp pywin32
Код: Выделить всё
> python .\myapp\main.py
Код: Выделить всё
Traceback (most recent call last): File "D:\Parsa Projects\Python-PDF\myapp\main.py", line 3, in import win32com.client File "D:\Parsa Projects\Python-PDF\myapp\win32com\__init__.py", line 8, in import pythoncom File "D:\Parsa Projects\Python-PDF\myapp\pythoncom.py", line 2, in import pywintypes ModuleNotFoundError: No module named 'pywintypes'
Может ли кто-нибудь мне помочь?
Что я могу сделать?
Это мой код Python:
Код: Выделить всё
import argparse
import pathlib
import win32com.client
import os
def convert_word_to_pdf(word_file_path, pdf_file_path):
if not os.path.exists(word_file_path):
raise FileNotFoundError(f"The file {word_file_path} does not exist.")
word = win32com.client.Dispatch('Word.Application')
word.Visible = False
try:
doc = word.Documents.Open(word_file_path)
doc.SaveAs(pdf_file_path, FileFormat=17)
doc.Close()
except Exception as e:
print(f"An error occurred: {e}")
finally:
word.Quit()
def main():
filepath = os.path.abspath('D:\\Parsa Projects\\Python-PDF\\file-sample_100kB.docx')
print(filepath)
# pdf_path = pathlib.Path('./file-sample_100kB.pdf').absolute()
pdf_path = os.path.abspath('D:\\Parsa Projects\\Python-PDF\\file-sample_100kB.pdf')
convert_word_to_pdf(filepath, pdf_path)
# parser = argparse.ArgumentParser("Arguments")
# if os.environ.get("MY_ENV_VAR") is not None:
# parser.add_argument("--my-env-var", required=True, action="store_true")
# if os.environ.get("MY_ENV_VAR2") is not None:
# parser.add_argument("--my-env-var2", required=True, action="store_true")
# parser.parse_args()
if __name__ == "__main__":
# main()
# exit()
# doc_path = pathlib.Path('./file-sample_100kB.docx').absolute()
filepath = os.path.abspath('D:\\Parsa Projects\\Python-PDF\\file-sample_100kB.docx')
print(filepath)
# pdf_path = pathlib.Path('./file-sample_100kB.pdf').absolute()
pdf_path = os.path.abspath('D:\\Parsa Projects\\Python-PDF\\file-sample_100kB.pdf')
convert_word_to_pdf(filepath, pdf_path)
> mkdir myapp
> xcopy /f /y main.py .\myapp\main.py
> python -m pip install -t myapp pywin32 pypiwin32
> python -m zipapp -p
"C:\Users\Parsa\AppData\Local\Programs\Python\Python312\python.exe" -m
main:main -c -o myapps мое приложение
Подробнее здесь: https://stackoverflow.com/questions/789 ... red-module