.. only:: html .. _capi-paths: Организация файлов =============================== Для реализации программного интерфейса используется Python версии 3.2.2 (``_). Он поставляется вместе с дистрибутивом клиента Cerebro (``_). Также в поставку с дистрибутивом включены сторонние пакеты: * **psycopg2** -- доступ к базе данных PostgreSQL (``_); * **PySide** -- разработка пользовательского интерфейса (``_); * **xlrd3** -- чтение файлов формата Excel97 (``_); * **xlwt3** -- запись в файлы формата Excel97 (``_); * **html2text** -- преобразование текста в формате HTML в обычный текст (``_). Файлы программного интерфейса расположены в папке **py-frontend**. Python и сторонние пакеты расположены в папке **py-site-packages**. Обе папки находятся рядом с исполняемым файлом приложения Cerebro. .. note:: В случае операционной системы Mac OS X эти папки могут располагаться как внутри контейнера Cerebro.app (**Cerebro.app/Contents/MacOs/**), так и рядом с ним. Сначала проверяются папки рядом с контейнером Cerebro.app. Это сделано для удобства хранения Python-модулей на сервере сразу для всех операционных систем. То есть, если у вас все исполняемые файлы Cerebro для всех ОС расположены на сервере в одной папке, то папки для Python-модулей будут находиться внутри неё в единственном экземпляре. В папке **py-frontend** лежат :ref:`шаблоны расширяемых модулей `, пакет :ref:`cerebro ` и пакет примеров :ref:`examples `. Структура файлов Cerebro Python API на жестком диске:: Cerebro/ cerebro py-frontend/ examples/ ... cerebro/ ... event.py.template logoff.py.template logon.py.template menu.py.template py-site-packages/ linux32/ ... linux64/ ... mac/ ... psycopg2/ ... win/ ... html2text.py python32.zip xlrd3.zip xlwt3.zip ... Где приложение ищет пользовательские модули -------------------------------------------- Пользовательские пакеты и модули по умолчанию ищутся: * в корневой директории, рядом с исполняемым файлом приложения Cerebro; * в папке **py-frontend**; * в папке **py-site-packages**; * в папках **py-site-packages/linux32**, **py-site-packages/linux64**, **py-site-packages/mac** и **py-site-packages/win** в зависимости от операционной системы. Все пути для поиска можно посмотреть в переменной *sys.path*. Вы также можете добавить дополнительные пути поиска в эту переменную, но делать это нужно до импорта пакета/модуля, который расположен по этому пути.