Un flujo de trabajo de Automator para extraer texto como voz de archivos PDF

2

Recibo archivos PDF para revisar el contenido del curso que quiero convertir a archivos MP3 y llevar conmigo como audio hablado.

Automator ofrece conversión de 'texto a voz' y es genial. Cuando trato de construir un flujo de trabajo alrededor, aparentemente todo sucede excepto lo que necesito.

Quiero, como una acción de carpeta:

  • Para extraer el texto de un PDF colocado en la carpeta correspondiente
  • Para convertir este texto en audio hablado
  • Para proporcionar detalles para iTunes
  • Importar esto en una lista de reproducción de mi elección

Actualmente tengo variaciones en esta secuencia, que no funciona:

  1. Extraer texto PDF, guardar
  2. Convertir texto a audio, guardar
  3. Importar audio
  4. Dar información de iTunes
  5. Añadir título a PlayList

Actualmente, el texto PDF se extrae, no termina donde esperaba, y el script parece colgar en la generación del audio. Los documentos simples de TextEdit funcionan bien.

Que pasa

(Esta pregunta es una continuación de una que hice ayer: aquí )

Edd Turner
fuente
Así que acabo de tratar de dividir este dowen en 3 scripts (texto Extact; Convertir a audio; Importar a iTunes) y he llegado a mi primer obstáculo, incluso el simple 'Agregar a carpeta y extraer texto PDF' no funciona . ¿Qué debo hacer para activar un desplazamiento de carpeta que no sea guardar el flujo de trabajo?
Edd Turner

Respuestas:

2

Si bien Automator es bastante útil, personalmente considero que la Terminal / línea de comando es un buen lugar para resolver problemas como este.

La idea básica sigue usando los pasos que describe, pero haciendo todo el trabajo desde la línea de comandos. Investigué un convertidor de PDF a texto útil , y encontré PDFminer bastante útil. Si puede hacer que se ejecute, ¡la mitad de su trabajo está hecho!

pip install pdfminer

Paso uno y dos, luego se puede resolver con este one-liner en Terminal:

pdf2txt.py example.pdf | say -v Daniel -o example.aiff

Todavía falta la adición de metadatos: ¿qué necesita aquí: Título / Álbum / "Artista"?

En un paso final, agregaría el archivo a una determinada lista de reproducción de iTunes. Dependiendo de su flujo de trabajo ideal, uno podría construir un pequeño LaunchAgent que monitoree una carpeta en busca de nuevos archivos ...

myhd
fuente