Pyinstaller のすべてのドキュメントでは、個々のファイルを含めることについて説明しています。ディレクトリを含めることは可能ですか、それとも、インクルード ディレクトリを走査してインクルード配列を作成する関数を作成する必要がありますか?
46781 次
5 に答える
23
スペックファイルの後に以下を貼り付けてa = Analysis()
、ディレクトリを再帰的にトラバースし、その中のすべてのファイルをディストリビューションに追加します。
##### include mydir in distribution #######
def extra_datas(mydir):
def rec_glob(p, files):
import os
import glob
for d in glob.glob(p):
if os.path.isfile(d):
files.append(d)
rec_glob("%s/*" % d, files)
files = []
rec_glob("%s/*" % mydir, files)
extra_datas = []
for f in files:
extra_datas.append((f, f, 'DATA'))
return extra_datas
###########################################
# append the 'data' dir
a.datas += extra_datas('data')
于 2012-08-20T07:24:37.183 に答える
7
を使用するだけではどうglob
ですか?
from glob import glob
datas = []
datas += glob('/path/to/filedir/*')
datas += glob('/path/to/textdir/*.txt')
...
a.datas = datas
于 2012-07-04T04:59:00.630 に答える
7
問題は想像以上に簡単です
これを試して:
--add-data="path/to/folder/*;."
それが役に立てば幸い !!!
于 2019-11-30T16:21:48.493 に答える