cx_freeze
Python アプリを Windows 実行可能ファイルに変換するために使用しています。pandas-profiling
スクリプトの 1 つでパッケージを使用しています。exe ファイルを実行すると、次のエラーが表示されます。
File "C:\Users\Ronnie\python3.6\Lib\site-packages\pandas_profiling\__init__.py", line 10, in <module>
import pandas_profiling.templates as templates
File "C:\Users\Ronnie\python3.6\Lib\site-packages\pandas_profiling\templates.py", line 64, in <module>
row_templates_dict = {'NUM': template('row_num'),
File "C:\Users\Ronnie\python3.6\Lib\site-packages\pandas_profiling\templates.py", line 60, in template
return jinja2_env.get_template(templates[template_name], globals=globals)
File "C:\Users\Ronnie\python3.6\Lib\site-packages\jinja2\environment.py", line 830, in get_template
return self._load_template(name, self.make_globals(globals))
File "C:\Users\Ronnie\python3.6\Lib\site-packages\jinja2\environment.py", line 804, in _load_template
template = self.loader.load(self, name, globals)
File "C:\Users\Ronnie\python3.6\Lib\site-packages\jinja2\loaders.py", line 113, in load
source, filename, uptodate = self.get_source(environment, name)
File "C:\Users\Ronnie\python3.6\Lib\site-packages\jinja2\loaders.py", line 234, in get_source
if not self.provider.has_resource(p):
File "C:\Users\Ronnie\python3.6\Lib\site-packages\pkg_resources\__init__.py", line 1396, in has_resource
return self._has(self._fn(self.module_path, resource_name))
File "C:\Users\Ronnie\python3.6\Lib\site-packages\pkg_resources\__init__.py", line 1449, in _has
"Can't perform this operation for unregistered loader type"
NotImplementedError: Can't perform this operation for unregistered loader type
そしてpandas-profiling
、exeファイルと同じディレクトリに配置して実行すると、次のエラーが発生します。
error: unrecognized arguments: --multiprocessing-fork 1448
マルチプロセッシング エラーの解決策を探しているときに、そのスクリプトの 1 つでpandas-profiling
が使用されていることがわかりました。そのモジュールで呼び出す必要がありますが、これをどこに追加すればよいかわかりません。multiprocessing
multiprocessing.freeze_support()
どんな助けでも大歓迎です。