У меня есть проект Scrapy с интерфейсом Gooey, и я хочу упаковать его в дистрибутив для macOS. У меня есть точка вызова runner.py
для запуска сканера, но упаковка его для MacOs кажется сложной. Я сделал build.spec
для PyInstaller на Windows (, который прекрасно работает ), но build.spec
для Mac, похоже, не упаковывает все. Он создает исполняемый файл, но не работает.
Вот файл spec
:
import gooey
gooey_root = os.path.dirname(gooey.__file__)
gooey_languages = Tree(os.path.join(gooey_root, 'languages'), prefix = 'gooey/languages')
gooey_images = Tree(os.path.join(gooey_root, 'images'), prefix = 'gooey/images')
a = Analysis(scripts=['runner.py'],
pathex=['/Library/Frameworks/Python.framework/Versions/2.7/bin', '/Library/Frameworks/Python.framework/Versions/2.7/lib'],
binaries=[('/System/Library/Frameworks/Tk.framework/Tk', 'tk'),
('/System/Library/Frameworks/Tcl.framework/Tcl', 'tcl')],
hiddenimports=['SearchEngineScrapy.spiders.searchenginespider'],
hookspath=['hooks/'],
runtime_hooks=[],
excludes=[],
datas=[('SearchEngineScrapy/spiders','./spiders'), ('SearchEngineScrapy/utils','./utils'),
('SearchEngineScrapy/settings.py','./settings.py'), ('SearchEngineScrapy/items.py','./items.py'),
('SearchEngineScrapy/middlewares.py','./middlewares.py'), ('SearchEngineScrapy/pipelines.py','./pipelines.py'),
('scrapy.cfg','.')
]
)
pyz = PYZ(a.pure, a.binaries, a.zipped_data)
options = [('u', None, 'OPTION'), ('v', None, 'OPTION'), ('w', None, 'OPTION')]
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
options,
gooey_languages, # Add them in to collected files
gooey_images, # Same here.
name='SearchEngineScrapy',
debug=True,
strip=None,
upx=False,
console=False,
windowed=True)
Пожалуйста, дайте мне знать, что мне здесь не хватает. Что я должен добавить, чтобы сделать его рабочим дистрибутивом приложения.