¿Puede AppleScript ejecutar un script en Python?

1

Como estudiante graduado de matemáticas, a menudo tengo estudiantes que me envían por correo electrónico la tarea para que me califiquen. Algunos estudiantes no me envían tareas en formato PDF. Por otro lado, muchos no lo hacen y es muy tedioso convertir su tarea en archivos de imagen en PDF manualmente, ya sea en línea o usando mi simple script de Python usando img2pdf.

Me gustaría poder

  1. descarga automáticamente los archivos adjuntos que parecen tareas para el hogar (es decir, el correo electrónico tiene "HW", "Homework", "hw" o "Hw",

  2. y existen imágenes o archivos PDF como archivos adjuntos)

  3. y luego, si se obtienen imágenes, combínelas en un solo PDF utilizando el script Python que ya tengo.

  4. Agregar una nueva opción en la aplicación Correo que puede convertir archivos adjuntos a PDF usando mi script de Python también será genial.

Creo que AppleScript puede manejar el problema de guardar archivos adjuntos. ¿Puede también ejecutar un script de Python?

    
pregunta Ying Zhou 16.12.2018 - 03:38

2 respuestas

1

Para responder a la pregunta realmente en tu publicación (a diferencia del título de la pregunta actual), sí, es posible ejecutar un script de Python desde AppleScript.

Sin embargo, debe asegurarse de que no intente ejecutar el script directamente. Tu AppleScript necesita usar Python para ejecutar tu script.

Ejemplo

Suponiendo que su secuencia de comandos de Python se llama img2pdf.py , debe pasar la ruta de su secuencia de comandos como un argumento de AppleScript a Python. A continuación se muestra un código de ejemplo para mostrar cómo haría esto si su script se guardara en su carpeta Documentos:

do shell script "python /Users/yourusername/Documents/img2pdf.py"

Pero, como mencioné en mi comentario anterior, solo aclararía sus requisitos de antemano (y los incluiría en cualquier criterio de tarea / ensayo / tarea) para que sus estudiantes sepan qué deben enviar y cómo. Mis hijos tienen que hacer este tipo de cosas para sus evaluaciones, por lo que no creo que sea demasiado para ti. ¡Además eso haría tu trabajo mucho más fácil! :)

    
respondido por el Monomeeth 16.12.2018 - 04:42
1

Esto es para lo que son los servicios de Automator. Inicie Automator y cree un servicio (también conocido como Acciones rápidas en Mojave).

  1. Configure las opciones para que reciba los archivos de imagen en Mail.app.
  2. Agregue la opción "Ejecutar shell script".
  3. Establezca el desplegable de shell en "usr / bin / python".
  4. Establezca el desplegable "entrada de paso" en "como argumentos". Le ayudará con un poco de python, que incluye los argumentos (nombres de archivo de los adjuntos).

Agregue su código de Python, que deberá guardar el archivo en una carpeta conocida (o, para obtener un crédito adicional, use pyObjC para abrir un diálogo de archivo).

A continuación, puede hacer clic con el botón derecho en estos archivos adjuntos en Correo y seleccionar el Servicio.

    
respondido por el benwiggy 16.12.2018 - 15:35

Lea otras preguntas en las etiquetas