无法为Windows执行pyinstaller编译的二进制文件

时间:2017-04-21 18:37:46

标签: python-3.5 pyinstaller

我在Python 3.5.2中编写了一个脚本,并在Mac上将其编译为二进制文件,工作正常。

然后我在Win 7机器pyinstaller --onefile script.py上编译了脚本。编译期间没有错误,但执行失败。

以下是完整的追溯。

Traceback (most recent call last):
  File "site-packages\requests\packages\__init__.py", line 27, in <module>
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "site-packages\requests\packages\urllib3\__init__.py", line 8, in <module>
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "site-packages\requests\packages\urllib3\connectionpool.py", line 28, in <module>
  File "site-packages\requests\packages\urllib3\packages\six.py", line 92, in __get__
  File "site-packages\requests\packages\urllib3\packages\six.py", line 115, in _resolve
  File "site-packages\requests\packages\urllib3\packages\six.py", line 82, in _import_module
ImportError: No module named 'queue'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "myscript.py", line 5, in <module>
    import support
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "support.py", line 1, in <module>
    import requests
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "site-packages\requests\__init__.py", line 63, in <module>
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "site-packages\requests\utils.py", line 24, in <module>
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "site-packages\requests\_internal_utils.py", line 11, in <module>
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "site-packages\requests\compat.py", line 11, in <module>
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "site-packages\requests\packages\__init__.py", line 29, in <module>
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "site-packages\urllib3\__init__.py", line 8, in <module>
  File "c:\users\support\appdata\local\programs\python\python35\lib\site-packages\PyInstaller\loader
\pyimod03_importers.py", line 389, in load_module
    exec(bytecode, module.__dict__)
  File "site-packages\urllib3\connectionpool.py", line 28, in <module>
  File "site-packages\urllib3\packages\six.py", line 92, in __get__
  File "site-packages\urllib3\packages\six.py", line 115, in _resolve
  File "site-packages\urllib3\packages\six.py", line 82, in _import_module
ImportError: No module named 'queue'
Failed to execute script myscript

我不知道出了什么问题。

1 个答案:

答案 0 :(得分:0)

有时会发现解码错误。 例如:GBK无法解码。一些特殊代码:。\?-_...。检查您的代码!