2014-09-26 11 views
2

Я пытаюсь создать exe-файл из моих (2) файлов py. В одном файле BS4 импортируется - import bs4 Когда я пытаюсь выполнить этот скрипт:Py2exe - модуль не найден

setup(
    console = ['gui.py'], 
    options = { 
     'py2exe': { 
      'packages': ["bs4"] 
     } 
    } 
) 

консоль возвращается:

C:\Users\uživatel\PycharmProjects\mail_checker>setup.py py2exe 
running py2exe 
*** searching for required modules *** 
Traceback (most recent call last): 
    File "C:\Users\u×ivatel\PycharmProjects\mail_checker\setup.py", line 12, in <m 
odule> 
    'packages': ["bs4"] 
    File "C:\Python27\lib\distutils\core.py", line 151, in setup 
    dist.run_commands() 
    File "C:\Python27\lib\distutils\dist.py", line 953, in run_commands 
    self.run_command(cmd) 
    File "C:\Python27\lib\distutils\dist.py", line 972, in run_command 
    cmd_obj.run() 
    File "C:\Python27\lib\site-packages\py2exe\build_exe.py", line 243, in run 
    self._run() 
    File "C:\Python27\lib\site-packages\py2exe\build_exe.py", line 296, in _run 
    self.find_needed_modules(mf, required_files, required_modules) 
    File "C:\Python27\lib\site-packages\py2exe\build_exe.py", line 1306, in find_n 
eeded_modules 
    mf.import_hook(f) 
    File "C:\Python27\lib\site-packages\py2exe\mf.py", line 719, in import_hook 
    return Base.import_hook(self,name,caller,fromlist,level) 
    File "C:\Python27\lib\site-packages\py2exe\mf.py", line 136, in import_hook 
    q, tail = self.find_head_package(parent, name) 
    File "C:\Python27\lib\site-packages\py2exe\mf.py", line 204, in find_head_pack 
age 
    raise ImportError, "No module named " + qname 
ImportError: No module named bs4 

Так что я полагаю, что я не setup.py написаны правильно. Не могли бы вы дать мне совет? Благодаря

+1

Любая разница, если вы явно о том, какой питон вы используете, как в 'python setup.py py2exe'? 'setup' может использовать версию, не имеющую' bs4'. –

+0

try ''includes': [" bs4 "]' вместо '' пакетов ': ["bs4"] ' – joaquin

+0

@joaquin Я пробовал, но не имел никакого эффекта. –

ответ

1

РЕШЕНИЕ:

Проблема заключалась в том, вероятно, что я установил BS4 (и xlsxwriter) с помощью easy_install, который создает * .egg файлы в папке site-packages. По какой-то причине Py2exe не смог найти bs4 в site-packages. Поэтому я попытался открыть файл яйца BeautifulSoup и скопировать папку bs4 в папку site-packages, я сделал то же самое с xlsxwriter.

Это помогло. Программа работает правильно.

Смежные вопросы