#python #pyinstaller #exe #project
Вопрос:
Я пытаюсь конвертировать файл py в exe-файл, но после преобразования я успешно конвертировал файл py в exe .Но при нажатии на exe-файл терминал просто закрывается и открывается, и ничего не происходит. Мой скрипт отображает уведомление с новым словом и его значением каждый день, когда я запускаю ide(Pycharm), но после преобразования в exe с помощью auto-py-to-exe ничего не происходит.Я также попытался импортировать отсутствующие модули
import urllib.request # used to send requests basically https requests
from bs4 import BeautifulSoup # used to parse xml and html pages so that we can extract data from webpages. It
# creates a parse tree for webpages
import time
from plyer import notification
if __name__ == '__main__':
url = "https://www.dictionary.com/e/word-of-the-day/" # any url can be inserted here as u wish
html_file = urllib.request.urlopen(url)
soup = BeautifulSoup(html_file, 'lxml') # for documentation check this https://zetcode.com/python/beautifulsoup/
soup1 = soup.find(class_="otd-item-headword__word") # inspect the page and find the specific data to crawl the
# data from the html code
try:
soup1 = soup1.get_text()
except AttributeError:
print('No words for today. You have learnt enough')
exit()
txt10 = soup1.rstrip() # The rstrip() method returns a copy of the string by removing the trailing characters
# specified as argument.
soup2 = soup.find(class_="otd-item-headword__pos")
soup2 = soup2.get_text()
txt11 = soup2.rstrip()
soup3 = soup.find(class_="wotd-item-origin__content wotd-item-origin__content-full")
txt = soup3.get_text()
txt1 = txt.rstrip()
notification.notify(
title="*** WORD OF THE DAY ***" "n" ' '.join(txt10.split()) "n",
message="MEANING:" ' '.join(txt11.split()),
# app_icon=r"C:UsersHPPycharmProjectsMyProjectsbook.ico",
app_icon=r"C:UserspurbaPycharmProjectspythonProjectdictionary.ico",
ticker=r"Vocab APP",
app_name=r"PYTHON PROJECT: VOCAB APP 365",
timeout=60
)
time.sleep(60 * 60)
Комментарии:
1. на самом деле это не проблема, просто python существует, как только программа завершает работу с кодом, так что это означает, что либо вам нужно поставить
time.sleep(5) #put the number of seconds you want it to sleep
, либо вы можете просто создать графический интерфейс своей программы
Ответ №1:
Это нормальное поведение. Скрипт python завершит работу сразу же после завершения своей работы. Чтобы ваше приложение зависало перед закрытием, вы можете добавить этот код в конце своего сценария:
input("Press any key to exit...")
Комментарии:
1. Это все то же самое, он не делает ничего другого. Я попробовал это
2. У меня была похожая проблема. Я исправил это, удалив pip, набрав текст. Просто
pip uninstall typing
попробуйте выполнить команду pyinstaller. Это должно все исправить.
Ответ №2:
pip uninstall typing
Это должно все исправить. После этого запустите свой код pyinstaller, ваш exe-файл будет создан, и когда вы его запустите, он не выйдет из строя.
Ответ №3:
Выполните следующие действия или посмотрите этот урок на YouTube:
- Установите pip установите модуль pyinstaller на python.
- Перейдите в установленные каталоги python. и откройте командную строку, затем установите pyinstaller
- После открытия командной строки и введите «pyinstaller —onefile-w, затем путь или имя вашего файла