【发布时间】:2021-06-22 15:17:35
【问题描述】:
我在 Python 3.9.5 中编写了一个简单的脚本,并通过运行将其转换为 .exe
pyinstaller --onefile -w myscript.py
当我从 python 文件启动它时,我的脚本运行良好,但它不起作用。当我单击位于 dist 文件夹中的 .exe 文件时。它说Failed to execute script myscript
我尝试创建一个仅使用 print("Hello World!") 的更简单的脚本,并使用完全相同的步骤将其转换为 .exe - 它工作得非常好...我不知道为什么我的第一个脚本不起作用。
这是我创建的代码:
import pyautogui
from pynput import keyboard
import time
import threading
text = pyautogui.prompt('Text: ')
interval = pyautogui.prompt('Interval: ')
def spam():
while running:
pyautogui.press('enter')
pyautogui.write(text)
pyautogui.press('enter')
time.sleep(float(interval))
running = False
def on_press(key):
global running
if key == keyboard.Key.f1:
running = running ^ True
if running:
t = threading.Thread(target=spam)
t.start()
with keyboard.Listener(on_press=on_press) as listener:
listener.join()
【问题讨论】:
-
尝试添加一些日志/打印语句并从 cmd 运行。并查看日志。当然之前要重建exe。
-
呃你什么意思?
-
在两者之间添加打印语句。打印一些东西,任何东西供您参考。尝试使用python运行
python file.py,你会看到控制台输出正确。 -
我认为您已经仔细检查了 pyinstaller 输出日志以确保所有依赖模块都已导入?
标签: python pyinstaller exe