Pergunta

Eu instalei o Py-Appscript na minha máquina e ela pode ser usada com a instalação do Python em /Library/Frameworks/Python.framework/Versions/Current/bin/python.

Estou tentando usar esta instalação do PY-Appscript com um serviço de automator. Para fazer isso, eu uso o Execute script de shell ação e depois defina o Casca para usr/bin/python (que é minha única escolha para Python, infelizmente).

o usr/bin/python Não parece ter acesso aos meus módulos de terceiros e falhas na linha:

from appscript import *

Existe uma maneira de eu dar usr/bin/python Acesso aos meus módulos de terceiros? Ou existe uma maneira de dizer ao automator para usar /Library/Frameworks/Python.framework/Versions/Current/bin/python em vez de?

Eu preciso do automator para executar o python diretamente do Execute script de shell ação. Qualquer ação que chama scripts de python externos ao Automator (via bin/bash, por exemplo) não tem desempenho rápido o suficiente para ser útil.

Foi útil?

Solução

Ok, pude fazer com que o trabalho usando um hack encontrado em Como faço para executar um script de shell php como uma ação do automator no Mac OS X.

Dentro do Execute script de shell ação, eu usei o /bin/sh/ concha com <<EOF ... EOF para a instalação adequada do Python.

Por exemplo, entrando

/Library/Frameworks/Python.framework/Versions/Current/bin/python <<EOF
from appscript import *
Numbers = app('Numbers')
EOF

Na seção de código do Execute script de shell ação funcionará. Portanto, pode -se chamar a instalação adequada (/Library/Frameworks/Python.framework/Versions/Current/bin/python acima) e colocar seu programa entre o <<EOF ... EOF delírios.

Alfred

Este truque funciona com Alfred também. Se você quiser usar appscript Com Alfred, apenas certifique -se de passar {query} Para a versão Python acima, como esta:

/Library/Frameworks/Python.framework/Versions/Current/bin/python script.py {query}

Outras dicas

Ao instalar módulos, você normalmente os instala por instância do Python. Portanto, neste caso, você os instalou para o python em /library/frameworks/python.framework/versions/current/bin/python, e ele estará disponível apenas para esse python. /usr/bin/python é aparentemente outra instalação do Python (eu não sou um especialista no OS X).

Para disponibilizá -lo para a instalação/usr/bin/python, instale -o para/usr/bin/python.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top