Я пытаюсь объединить некоторые PDF-файлы из командной строки на Mac.
После чтения в Интернете я обнаружил, что здесь есть скрипт на python:
/System/Library/Automator/Combine PDF Pages.action/Contents/Resources/join.py
После сбросамой python как системный 2.7 (sudo port select --set python python27
), я получаю эту ошибку при попытке запустить вышеупомянутый скрипт:
Traceback (most recent call last):
File "/System/Library/Automator/Combine PDF Pages.action/Contents/Resources/join.py", line 23, in <module>
from CoreFoundation import *
ImportError: No module named CoreFoundation
Так что, очевидно, python не может импортировать что-то под названием CoreFoundation
.Глядя, я нахожу в этом месте CoreFoundation.py
в моей файловой системе:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/Carbon/CoreFoundation.py
И, действительно, проверка переменной sys.path
, похоже, указывает на то, что вышеупомянутый каталог каким-то образом пропущен:
$ python
>>> import.sys
>>> sys.path
['', '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages']
(Простите за длинную непрерывную линию. Дело в том, что такие вещи, как
'/ opt / local / Library / Frameworks / Python.framework / Versions / 2.7 / lib / python2.7 / plat-Пакеты mac / lib-script '
находятся в sys.path
, но уже упоминались
' / opt / local / Library / Frameworks / Python.framework / Versions / 2.7 / lib /python2.7 / plat-mac / Carbon '
нет.) Поэтому я пытаюсь вручную добавить PYTHONPATH (который ранее был пустым):
PYTHONPATH = "/ opt / local / Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/Carbon"
... но даже после этого я получаю ту же ошибку ImportError: No module named CoreFoundation
.
Что мне делать?