2017-03-17 30 views
0

私はWindows 10の64ビットシステムで作業しています。pyinstallerがIndexErrorで失敗する

私はユーザー定義のデータでAPIを照会するpythonスクリプトを持っています。具体的には、ユーザーはinput()メソッドを使用して、いくつかの検索語を入力します。データは、ユーザーが選択したオプションに応じてコンソールに表示するか、テキストファイルに保存するJSON形式で取得されます。

私はこのスクリプトをexeにしたいので、ユーザーはpythonをインストールすることなくこれを実行できます。私はpyinstallerを使用しましたが、これまでに失敗しています。

私は自分のシステムにanacondaをインストールしましたが、私はpipでpyinstallerをインストールしました。

pip install pyinstaller 
pyinstaller --onefile my_script.py 

これらは、私はこれが失敗する原因となっている見当がつかないので、私はこれをデバッグする助けてください、私は

236 INFO: PyInstaller: 3.2.1 
236 INFO: Python: 3.6.0 
236 INFO: Platform: Windows-10-10.0.14393-SP0 
236 INFO: wrote C:\Users\Keshav\Documents\Hicotronics\rochester_scrape\data_get2.spec 
298 INFO: UPX is available. 
298 INFO: Extending PYTHONPATH with paths ['C:\\Users\\Keshav\\Documents\\Hicotronics\\rochester_scrape', 'C:\\Users\\Keshav\\Documents\\Hicotronics\\rochester_scrape'] 
298 INFO: checking Analysis 
298 INFO: Building Analysis because out00-Analysis.toc is non existent 
298 INFO: Initializing module dependency graph... 
314 INFO: Initializing module graph hooks... 
314 INFO: Analyzing base_library.zip ... 
Traceback (most recent call last): File "c:\programdata\anaconda3\lib\runpy.py", line 193, in _run_module_as_main 
"__main__", mod_spec) 
File "c:\programdata\anaconda3\lib\runpy.py", line 85, in _run_code 
exec(code, run_globals) 
File "C:\ProgramData\Anaconda3\Scripts\pyinstaller.exe\__main__.py", line 9, in <module> 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\__main__.py", line 90, in run 
run_build(pyi_config, spec_file, **vars(args)) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\__main__.py", line 46, in run_build 
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 788, in main 
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build')) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 734, in build 
exec(text, spec_namespace) 
File "<string>", line 16, in <module> 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 212, in __init__ 
self.__postinit__() 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\datastruct.py", line 161, in __postinit__ 
self.assemble() 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_main.py", line 317, in assemble 
excludes=self.excludes, user_hook_dirs=self.hookspath) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\depend\analysis.py", line 560, in initialize_modgraph 
graph.import_hook(m) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1509, in import_hook 
source_package, target_module_partname, level) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 1661, in _find_head_package 
target_module_headname, target_package_name, source_package) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\depend\analysis.py", line 209, in _safe_import_module 
module_basename, module_name, parent_package) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2077, in _safe_import_module 
module_name, file_handle, pathname, metadata) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2167, in _load_module 
self._scan_code(m, co, co_ast) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2585, in _scan_code 
module, module_code_object, is_scanning_imports=False) 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2831, in _scan_bytecode 
global_attr_name = get_operation_arg_name() 
File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\lib\modulegraph\modulegraph.py", line 2731, in get_operation_arg_name 
return module_code_object.co_names[co_names_index] 
IndexError: tuple index out of range 

を取得していますエラーです。

答えて

1
+0

はいWindowsの10 ためpyInstallerのサポートされていません。私はpython 3.4に基づいて新しい環境を作成するためにcondaを使ってこれを解決しました。また、Pythonのバージョンを切り替えた後でも直面したいくつかの他の問題は、私のアプリケーションでデータを取得するために使用していた要求ライブラリがpyinstallerでうまく動作しなかったことです。そこで、実行可能な実行可能ファイルを取得するために、urllib.requestに切り替える必要がありました。 – kchak

関連する問題