Python Pyinstaller/Django-pkg_resources.DistributionNotFound:The';django综合巴士';未找到分布

Python Pyinstaller/Django-pkg_resources.DistributionNotFound:The';django综合巴士';未找到分布,python,django,pyinstaller,Python,Django,Pyinstaller,我正在尝试为使用该模块的django网站创建一个安装程序 My Pyinstaller命令: pyinstaller --name djangosite manage.py Pyinstaller命令运行到完成 正在尝试使用运行web服务器 djangosite.exe runserver localhost:8000 我得到以下错误: Traceback (most recent call last): File "<string>", line 10, in <mo

我正在尝试为使用该模块的django网站创建一个安装程序

My Pyinstaller命令:

pyinstaller --name djangosite manage.py
Pyinstaller命令运行到完成

正在尝试使用运行web服务器

djangosite.exe runserver localhost:8000
我得到以下错误:

Traceback (most recent call last):
  File "<string>", line 10, in <module>
  File "django\core\management\__init__.py", line 338, in execute_from_command_line
  File "django\core\management\__init__.py", line 312, in execute
  File "django\__init__.py", line 18, in setup
  File "django\apps\registry.py", line 85, in populate
  File "django\apps\config.py", line 86, in create
  File "importlib\__init__.py", line 37, in import_module
  File "c:\users\USERNAME\appdata\local\temp\pip-build-vxcefe\pyinstaller\PyInstaller\loader\pyimod03_importers.py", line 389, in load_module
  File "omnibus\__init__.py", line 3, in <module>
  File "pkg_resources\__init__.py", line 561, in get_distribution
  File "pkg_resources\__init__.py", line 441, in get_provider
  File "pkg_resources\__init__.py", line 962, in require
  File "pkg_resources\__init__.py", line 849, in resolve
pkg_resources.DistributionNotFound: The 'django-omnibus' distribution was not found and is required by the application manage returned -1
回溯(最近一次呼叫最后一次):
文件“”,第10行,在
文件“django\core\management\\ uuuuu init\uuuuuu.py”,第338行,从命令行执行
文件“django\core\management\\ uuuuu init\ uuuuuu.py”,第312行,在execute中
文件“django\\ uuuuu init\ uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
文件“django\apps\registry.py”,第85行,填充
文件“django\apps\config.py”,第86行,创建
文件“importlib\\ uuuuu init\ uuuuuu.py”,第37行,在导入模块中
文件“c:\users\USERNAME\appdata\local\temp\pip build vxcefe\pyinstaller\pyinstaller\loader\pyimod03\u importers.py”,第389行,在加载模块中
文件“omnibus\\uuuu init\uuuuu.py”,第3行,在
get_发行版第561行的文件“pkg_资源\\uuu init__uuu.py”
get_provider中第441行的文件“pkg_resources\\ uu_init__.py”
文件“pkg\u resources\\uuuuu init\uuuuuu.py”,第962行,在require中
文件“pkg\u resources\\uuuuu init\uuuuu.py”,第849行,在resolve中
pkg_resources.DistributionNotFound:找不到“django omnibus”发行版,该发行版是应用程序管理返回的-1所必需的

如果我删除了所有django综合代码,该站点运行良好(除了MyWebSocket功能)。有什么想法吗?谢谢。

我需要为
django omnibus
添加一个hook.py文件,并在pyinstaller命令中添加
--additional hooks dir=.
标志

hook-omnibus.py 类似的答案如下:

我知道这是一个迟到的回复,但我在django用户帐户方面遇到了类似的问题-
pkg\u resources.DistributionNotFound:找不到“django用户帐户”分发版

我是在这里寻找解决办法的。我通过在settings.py中添加以下内容解决了这个问题-希望能帮助其他人

INSTALLED_APPS = [
    ...
    'django.contrib.sites',
    ...
]

使用PyInstaller 3.2.1获得了与pyqrcode相同的
DistributionNotFound
错误。添加到
hiddenimports
似乎不起作用,但如上所述添加一个钩子文件确实起作用(
hook pyqrcode.py
)。在我的情况下,不需要收集数据文件。我在spec文件中设置了
hookspath
参数:
Analysis(…,hookspath=['path-to-hook'],…)
,而不是使用
--additional hooks dir
INSTALLED_APPS = [
    ...
    'django.contrib.sites',
    ...
]