gensuitemodule — Генерация пакетов заглушек OSA
Модуль gensuitemodule создаёт пакет Python, реализующий заглушки для наборов AppleScript, реализованных определённым приложением, согласно его словарю AppleScript.
Обычно он вызывается пользователем через PythonIDE, но также может быть запущен как скрипт из командной строки (для справки по параметрам передайте --help) или импортирован из кода Python. Пример его использования см. в Mac/scripts/genallsuites.py в дистрибутиве исходного кода, который генерирует пакеты заглушек, включённые в стандартную библиотеку.
Он определяет следующие общедоступные функции:
-
gensuitemodule.is_scriptable(application) -
Возвращает true, если
application, который должен быть передан в качестве пути к файлу, кажется управляемым сценариями. Воспринимайте результат с осторожностью: Internet Explorer, кажется, не управляемый сценариями, но на самом деле является таковым.
-
gensuitemodule.processfile(application[, output, basepkgname, edit_modnames, creatorsignature, dump, verbose]) -
Создаёт пакет заглушек для
application, который должен быть передан в качестве полного пути к файлу. Для пакета.appэто путь к пакету, а не к исполняемому файлу внутри пакета; для развёрнутого приложения CFM вы передаёте имя файла исполняемого файла приложения.Эта функция запрашивает у приложения ресурсы терминологии OSA, декодирует эти ресурсы и использует полученные данные для создания Python-кода для пакета, реализующего заглушки клиента.
output— это путь к файлу, где хранится результирующий пакет; если не указано, пользователю будет предложено стандартное диалоговое окно «Сохранить как».basepkgname— это базовый пакет, на котором будет построен этот пакет, и по умолчанию равенStdSuites. Необходимо указать его только при генерацииStdSuitesсамого себя.edit_modnames— словарь, который можно использовать для изменения имён модулей, которые стали слишком громоздкими после преобразования имён.creator_signatureможно использовать для переопределения 4-символьного кода создателя, который обычно извлекается из файлаPkgInfoв пакете или из сигнатуры создателя файла CFM. Еслиdumpзадан, он должен ссылаться на объект файла, иprocessfileостановится после декодирования ресурсов и выведет Python-представление ресурсов терминологии в этот файл.verboseтакже должен быть объектом файла, и его указание заставитprocessfileсообщить вам о том, что он делает.
-
gensuitemodule.processfile_fromresource(application[, output, basepkgname, edit_modnames, creatorsignature, dump, verbose]) -
Эта функция делает то же, что и
processfile, за исключением того, что она использует другой метод для получения ресурсов терминологии. Она открываетapplicationкак файл ресурсов и считывает все ресурсы"aete"и"aeut"из этого файла.
© 2001–2020 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/2.7/library/gensuitemodule.html