2 votos

Automator para obtener anotaciones en PDF y exportarlas a Excel

Estoy tratando de hacer un servicio para MacOS usando Automator para extraer las anotaciones del PDF y obtener la información en un archivo de Excel.

Puedo obtener con éxito las anotaciones de un PDF, y exportarlas a un archivo de texto. Pero si intento analizar la misma información en un nuevo archivo de Excel, toda la información se pega en una sola celda.

¿Cuáles serían los pasos correctos en Automator, para tener cada línea de texto en filas separadas de Excel?

0voto

Pirooz Puntos 486

Asumiendo que conoce los fundamentos de Automator....Cree un flujo de trabajo con estas Acciones:

enter image description here

En la Acción AppleScript copie y pegue lo siguiente:

    on run {input, parameters}
    set delimitedList to paragraphs of (input as string)
    set myExport to ""
    do shell script "touch /tmp/myFile.csv"
    repeat with myLines in delimitedList
        set myLineExport to ""
        set AppleScript's text item delimiters to {"    "}
        set listItems to every text item of myLines
        repeat with eachItem in listItems
            set myLineExport to myLineExport & "\"" & eachItem & "\","
        end repeat
        set myExport to myExport & myLineExport & "
"
    end repeat
    write_to_file(myExport, (POSIX file "/tmp/myFile.csv" as alias), false)
    return POSIX file "/tmp/myFile.csv" as alias
end run

on write_to_file(this_data, target_file, append_data)
    try
        set the target_file to the target_file as string
        set the open_target_file to open for access file target_file with write permission
        if append_data is false then set eof of the open_target_file to 0
        write this_data to the open_target_file starting at eof
        close access the open_target_file
        return true
    on error
        try
            close access file target_file
        end try
        return false
    end try
end write_to_file

Nota: Puede tener problemas si sus anotaciones contienen comillas, Sin embargo, no habrá ningún problema si utiliza citas inteligentes.

Puede seleccionar su pdf en el primer aviso.


Fuentes: https://www.macosxautomation.com/applescript/sbrt/sbrt-09.html

0 votos

Gracias JBis. La solución funciona pero todavía tengo algunos problemas. Uno de ellos es que cada comentario se rellena en las celdas de izquierda a derecha en diferentes columnas. Como la tarea la hace el script y no Automator propiamente dicho, estaba tratando de entender cómo funciona, pero mis modificaciones están haciendo un lío. ¿Cómo puedo hacer que llene la información usando filas (cada comentario en una nueva fila), y cada tipo de datos en columnas (página, nombre_de_usuario, fecha, hora, comentario)? También estoy obteniendo caracteres erróneos cuando el texto contiene á,é,í,ñ, etc. Estoy viendo que esto se lograría mejor con Applescript que con Automator. Gracias

0 votos

@George Convertir los comentarios en filas es fácil, pero añadir el tipo de datos es posible, pero difícil. Tengo una idea. Déjame ver qué puedo hacer.

0 votos

@George Done. Por favor, vote hacia arriba y marque como respondido.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X