Saltar al contenido principal

Dividir PDF por texto en Power Automate: Convierta un lote escaneado en archivos separados con PDF4me.

· 25 min de lectura
SEO and Content Writer

PDF4me divide un PDF por texto. es una acción de Power Automate que divide un PDF en varios archivos dondequiera que aparezca un marcador de texto. Este flujo supervisa una carpeta de SharePoint, divide cada nuevo escaneo en un Serial#: El sistema selecciona un marcador y luego transfiere los resultados a Dropbox. Un escaneo por lotes genera tres archivos con nombre, sin necesidad de seleccionar páginas manualmente.

Cualquiera que use un escáner conoce el problema. Alguien coloca una pila de documentos en el alimentador, presiona escanear una vez y se obtiene un único PDF con veinte registros sin relación entre sí. Cualquier divisor en línea que aparezca en la primera página de Google solucionará esto sin problema, siempre y cuando una persona suba el archivo, navegue por un selector de páginas y descargue las partes. Eso está bien una vez. Pero no está bien cuando el escáner se ejecuta todas las mañanas. Este proceso elimina por completo la intervención humana.

El flujo de un vistazo
1. When a file is created in a folder
SharePoint trigger watching /Shared Documents/ScanSplitInput.
2. PDF - Split PDF by Text
PDF4me cuts the scan before every page carrying the Serial#: marker.
3. For each
Loops over body/splitedDocuments, once per split file.
4. Create file
Dropbox writes each piece into /ScanSplitOutput under its own name.
La versión corta

Un escaneo se guarda en una biblioteca de SharePoint. PDF4me lee la capa de texto, encuentra cada página que inicia un nuevo registro y devuelve una matriz de archivos PDF individuales. Un bucle `for each` recorre esa matriz y guarda cada archivo en Dropbox. Cuatro acciones, sin necesidad de escribir expresiones, y todo el proceso finaliza en menos de seis segundos.

Preguntas y respuestas basadas en el porqué

¿Por qué dividir por texto en lugar de por número de páginas? El conteo de páginas solo funciona cuando todos los registros tienen la misma longitud. Los lotes reales no son uniformes. Una factura ocupa una página, la siguiente cuatro. Un marcador de texto acompaña al registro, por lo que la división se mantiene correcta independientemente de las variaciones en la longitud.

¿Por qué el PDF necesita una capa de texto? La acción busca el texto dentro del documento, no los píxeles. Una fotografía o un escaneo plano sin OCR aplicado no tiene texto que buscar, por lo que cada coincidencia resulta vacía. Ejecute primero el OCR y el mismo proceso funcionará con los originales en papel.

¿Por qué un bucle For each después de la división? La acción devuelve una matriz, no un solo archivo. Power Automate no puede escribir una matriz en el almacenamiento de una sola vez, por lo que el bucle convierte "tres documentos" en tres llamadas separadas para crear archivos.

¿Por qué enviar el resultado a Dropbox y no de vuelta a SharePoint? Es más bien una costumbre, además de que mantiene las carpetas de entrada y salida visiblemente separadas durante las pruebas. Sustituye la última acción por «Crear archivo» de SharePoint y nada más en el flujo cambiará.


Lo que obtendrás

Aporte: un PDF de varios registros insertado en una biblioteca de documentos de SharePoint, donde cada registro comienza con una línea que se lee Serial#: SPTEST-A, Serial#: SPTEST-B, etcétera. Producción: Un archivo PDF por registro en una carpeta de Dropbox, cada uno conteniendo exactamente las páginas que pertenecen a ese registro.

Biblioteca de documentos de SharePoint que muestra la carpeta ScanSplitInput que contiene scan-split-test.pdf y sharepoint-trigger-test.pdf, ambos modificados por la cuenta Pdf4me Flow.

La carpeta de SharePoint vigilada. Cualquier cosa que llegue aquí inicia una ejecución.

Listado de carpetas Dropbox ScanSplitOutput sharepoint-trigger-test 1.pdf, sharepoint-trigger-test 2.pdf y sharepoint-trigger-test 3.pdf producidos por la división

Se recibe un escaneo de tres páginas y se obtienen tres archivos PDF numerados individualmente.


Lo que necesitas

  • Power Automate. Abrir Power AutomateUna licencia estándar de Microsoft 365 cubre todo lo que se utiliza aquí. Se trata de un flujo en la nube, no de Power Automate Desktop.
  • Clave API de PDF4me. Obtén tu clave APIConéctalo la primera vez que añadas una acción de PDF4me.
  • Un sitio de SharePoint y una cuenta de DropboxAntes de crear el flujo, cree una carpeta de entrada en una biblioteca de documentos de SharePoint y una carpeta de salida en Dropbox, para que ambos selectores tengan un lugar al que apuntar.
  • Un PDF de prueba con marcadores de texto repetitivos.. muestra-de-escaneo-por-lote.pdfTres páginas, cada una comenzando con su propia línea de número de serie.

Primero, toma las muestras. Una vez guardado el flujo, descarga el PDF de entrada y súbelo a tu carpeta de entrada de SharePoint. También encontrarás aquí los tres archivos de salida esperados, para que puedas compararlos con los resultados de tu propia ejecución.


El flujo de un vistazo

  1. Cuando se crea un archivo en una carpeta (Disparador de SharePoint) apuntaba a /Shared Documents/ScanSplitInput.
  2. PDF - Dividir PDF por texto (PDF4me) con el texto de búsqueda Serial#:(.*) y tipo dividido before.
  3. Para cada iterando body/splitedDocuments.
  4. Crear archivo (Dropbox) escribiendo en /ScanSplitOutput.

Descripción general del flujo completo

Historial de ejecución de Power Automate que muestra cuatro acciones que se completaron con éxito en orden: SharePoint Cuando se crea un archivo en una carpeta a los 0,3 segundos, PDF Dividir PDF por texto a los 0,4 segundos, Para cada uno a los 4 segundos mostrando la iteración 1 de 3, y Dropbox Crear archivo a 1 segundo.

Todo el flujo consta de cuatro acciones. El contador "1 de 3" indica que la división está haciendo su trabajo.


Paso 1: ¿Cómo se supervisa una carpeta de SharePoint para detectar nuevos análisis?

Flujo hasta ahora: Nada todavía, este es el detonante.

El disparador se activa cada vez que aparece un archivo en una carpeta específica de la biblioteca de documentos. Seleccione la carpeta con precisión. Si la carpeta apunta a la raíz de una biblioteca compartida, cada carga, por independientemente de la carpeta, iniciará una ejecución.

  1. Crear uno nuevo Flujo de nube automatizado y buscar en la lista de activadores Cuando se crea un archivo en una carpeta.
  2. Configurar:
    • Dirección del sitio: tu sitio, por ejemplo PDF4me Sharepoints - https://ynoox1.sharepoint.com/sites/PDF4meSharepoints
    • ID de carpeta: /Shared Documents/ScanSplitInput
  3. Abierto Parámetros avanzados y encender Inferir tipo de contenido, luego configúrelo en Yes.

Configuración del desencadenador de SharePoint

Power Automate Cuando se crea un archivo en un panel de activación de carpeta con Dirección del sitio establecida en PDF4me Sharepoints, ID de carpeta establecido en /Shared Documents/ScanSplitInput y el parámetro avanzado Inferir tipo de contenido establecido en Sí

La opción "Inferir tipo de contenido" configurada en "Sí" es lo que hace que el activador te entregue bytes PDF reales en lugar de un blob genérico.

Consejo. Este disparador lleva la etiqueta "(obsoleto)" en el selector. Todavía se ejecuta, y es el que se muestra aquí, pero para un nuevo flujo de producción prefiera Cuando se crea un archivo (solo propiedades) seguido de Obtener el contenido del archivoEl resto del flujo es idéntico, porque ambas rutas terminan con los bytes del archivo en mano. Microsoft enumera cada desencadenador y su estado en el Referencia del conector de SharePoint.


Paso 2: ¿Cómo decide la función Dividir PDF por texto dónde cortar?

Flujo hasta ahora: Disparador de SharePoint.

Esta es la acción que realiza el trabajo real. Lee la capa de texto del documento, encuentra todas las páginas que contienen el texto buscado y corta el documento en esas páginas. Todo lo demás es secundario.

  1. Agregue un nuevo paso y busque PDF - Dividir PDF por texto.
  2. Configurar:
    • Contenido del archivo: File Content desde el disparador
    • Nombre del archivo: x-ms-file-name-encoded desde el disparador
    • Texto: Serial#:(.*)
    • Tipo dividido: before
    • Nomenclatura de archivos divididos: NameAsPerOrder
  3. Conecta tu cuenta de PDF4me cuando se te solicite.

Dividir PDF por parámetros de texto

ParámetroValor utilizado aquíLo que controla
Contenido del archivoFile Content desde el disparadorLos bytes del PDF a dividir. Debe ser un PDF real con una capa de texto que permita realizar búsquedas.
Nombre del archivox-ms-file-name-encodedEl nombre de origen se utiliza para la identificación del procesamiento y como raíz para los nombres de salida.
TextoSerial#:(.*)El marcador que inicia un nuevo registro. La coincidencia distingue entre mayúsculas y minúsculas, por lo que serial#: no encontraría nada.
Tipo divididobeforeCorta inmediatamente antes de cada página coincidente, por lo que la página del marcador abre su propio documento. after en lugar de cerrar el anterior.
Nomenclatura de archivos divididosNameAsPerOrderNumera las salidas en el orden en que fueron cortadas, produciendo name 1.pdf, name 2.pdf, name 3.pdf.
Panel de acciones de PDF4me PDF Split PDF by Text que muestra el contenido del archivo asignado desde el desencadenador de SharePoint, el nombre del archivo asignado a x-ms-file-name-encoded, el texto configurado con el patrón de búsqueda Serial#, el tipo de división configurado como before y la nomenclatura del archivo de división configurada como NameAsPerOrder.

El tipo de división anterior es la diferencia entre un marcador que abre su registro y cierra el que está encima. Si se invierte, todos los archivos estarán desfasados una página.

Consejo. Elija un marcador que no pueda aparecer en ningún otro lugar del documento. Serial#: es seguro. Una simple palabra como Invoice No lo es, porque también coincidirá con la frase "Total de la factura" a mitad de la página y se dividirá allí también.


Paso 3: ¿Por qué necesitas un bucle For each aquí?

Flujo hasta ahora: Activador de SharePoint más la opción de dividir PDF por texto.

La acción de división devuelve una matriz llamada splitedDocumentsCada entrada contiene un archivo de salida. Power Automate no tiene forma de escribir una matriz completa en el almacenamiento en una sola acción, por lo que la matriz debe recorrerse entrada por entrada.

  1. Agregar un Control acción y elección Para cada.
  2. Configurar:
    • Seleccione una salida de los pasos anteriores.: body/splitedDocuments de la acción Dividir PDF por texto
  3. Deje la concurrencia del bucle en su valor predeterminado. Estos archivos son pequeños y el orden es más fácil de leer cuando las ejecuciones permanecen secuenciales. Microsoft documenta los límites de concurrencia y anidamiento en el Aplicar a cada referencia.

Para cada configuración

Power Automate Para cada panel de acciones con el campo Seleccionar una salida de los pasos anteriores rellenado con el token body/splitedDocuments de la acción Dividir PDF por texto de PDF4me

Un token representa toda la configuración. Si Power Automate incluyó automáticamente la acción Crear archivo en un bucle, ya lo hizo por usted.

Esta es la única línea que decide si el flujo funciona. Si apuntas el bucle a cualquier cosa que no sea cuerpo/documentos divididosLa acción Crear archivo que contiene se ejecutará una vez con la carga útil incorrecta o no se ejecutará en absoluto.


Paso 4: ¿Cómo se guarda cada archivo dividido en Dropbox?

Flujo hasta ahora: Disparador de SharePoint más Dividir PDF por texto más Para cada uno.

Dentro del bucle, cada iteración expone el archivo dividido actual a través de dos tokens: fileName y streamFile. Mapéalos en línea recta.

  1. Dentro del Para cada bloque, agregue un Dropbox acción y elección Crear archivo.
  2. Configurar:
    • Ruta de la carpeta: /ScanSplitOutput
    • Nombre del archivo: fileName
    • Contenido del archivo: streamFile
  3. Conecta tu cuenta de Dropbox cuando se te solicite.

Dropbox Crear configuración de archivo

Panel de acción Crear archivo de Dropbox dentro del bucle Para cada uno con Ruta de carpeta establecida en /ScanSplitOutput, Nombre de archivo asignado al token fileName y Contenido de archivo asignado al token streamFile de la acción de división de PDF4me

Los parámetros fileName y streamFile provienen del elemento actual del bucle, no del activador. Ambos tokens llevan el icono de PDF4me.

Consejo. Mantén la carpeta de salida separada de la carpeta de entrada. Si se escriben los archivos divididos de nuevo en la carpeta que está monitorizando el disparador, se crea un bucle que se vuelve a activar con su propia salida, lo cual es una forma costosa de descubrir el problema.


Ejecuta el flujo y verifica.

  1. Ahorrar el flujo en la parte superior derecha.
  2. Subir scan-batch-sample.pdf En la carpeta de SharePoint que está monitorizando el activador. El activador realiza sondeos, así que espere un minuto en lugar de esperar una ejecución instantánea.
  3. Abrir el flujo historial de ejecución y confirme que las cuatro acciones tengan una marca de verificación verde. El bloque "Para cada uno" muestra un contador, y debería leerse 1 de 3 para el archivo de muestra.
  4. Abierto /ScanSplitOutput En Dropbox. Debería ver tres archivos PDF numerados 1, 2 y 3, cada uno con un único registro de número de serie.

¿Qué construiste exactamente? Un separador de documentos sensible al contenido. Las mismas cuatro acciones funcionan en cualquier lote donde cada registro se anuncia con una cadena consistente, ya sea un número de factura, un ID de paciente, una referencia de caso o un encabezado de capítulo. La misma acción de PDF4me existe en Hacer, Zapier y n8nDe esta forma, el patrón se traslada de una plataforma a otra, cambiando únicamente los pasos de activación y almacenamiento.


Variaciones comunes que puedes agregar sin reconstruir

Primero, el escaneo mediante OCR.
Los originales en papel no tienen capa de texto. Inserte una acción OCR de PDF4me entre el activador y la división, y los escaneos de solo imagen comenzarán a coincidir con el mismo marcador.
Dividir en un código de barras en su lugar
Si su escáner inserta hojas separadoras, cambie la acción por Dividir PDF por código de barras. Mismo bucle, mismo archivo de creación, diferente método de detección.
Ruta por contenido
Agregue una condición dentro del bucle que lea el nombre del archivo actual y escriba en una carpeta diferente por cada prefijo. Un escaneo luego se distribuye a varios destinos.
PDF4me frente a las alternativas
Consulte la tabla comparativa a continuación para ver en qué se diferencia este enfoque de los divisores manuales en línea y de Power Automate Desktop.
Flujo en la nube frente a las alternativasFunciona sin supervisiónDivisiones en cuanto al contenidoNecesita un ordenador de sobremesa
PDF4me en un flujo de nube de Power AutomateSí, en cualquier marcador de textoNo
Divisor manual en líneaNo, una persona sube cada archivo.A veces, por selector de páginaNo
Power Automate DesktopSolo mientras la máquina esté encendidaDepende de las acciones instaladas

Preguntas frecuentes

¿Cómo dividir un PDF en Power Automate?

Añade el PDF - Dividir PDF por texto acción de PDF4me a un flujo en la nube, mapear los bytes del PDF en Contenido del archivoy darle un Texto valor a buscar. La acción devuelve una matriz de archivos PDF separados en body/splitedDocuments. Envuelve una acción de almacenamiento como Dropbox Crear archivo en un Para cada Recorre ese array y guarda cada elemento.

No se requiere escribir ninguna expresión. Las cuatro acciones que se muestran en esta publicación constituyen el flujo completo.

¿Puede Power Automate dividir un PDF en función de su contenido?

Sí, eso es exactamente lo que hace este flujo. Power Automate no tiene una acción nativa para dividir PDF, por lo que el reconocimiento de contenido proviene del conector PDF4me. Este lee la capa de texto del documento y realiza el corte donde aparece la cadena de búsqueda, lo que significa que la división sigue el orden de los registros en lugar de un número fijo de páginas.

El único requisito es una capa de texto real. Un escaneo que nunca ha sido procesado por OCR es simplemente una imagen de palabras a efectos de la búsqueda.

¿Cómo se divide un PDF en varios archivos en Power Automate?

La división en sí misma es una acción, pero obtener varios archivos a partir de ella requiere dos. Dividir PDF por texto produce la matriz y un Para cada El bucle convierte ese array en una llamada a Create File por cada documento. Omitir el bucle es la razón más común por la que se obtiene un solo archivo de salida en lugar de varios.

En la ejecución de ejemplo aquí, un escaneo de tres registros produce tres archivos llamados sharepoint-trigger-test 1.pdf a través de sharepoint-trigger-test 3.pdf, porque Nomenclatura de archivos divididos estaba establecido NameAsPerOrder.

¿Funciona la división de PDF en Power Automate Desktop?

Este flujo se ejecuta en la nube, y esto es intencional. Se ejecuta en la infraestructura de Microsoft cada vez que un archivo llega a SharePoint, sin necesidad de mantener ninguna máquina encendida ni ninguna puerta de enlace que administrar. Power Automate Desktop puede llamar a la misma API de PDF4me, pero esto implica el uso de una máquina programada y su tiempo de actividad.

Si sus documentos ya se encuentran en SharePoint, OneDrive o Dropbox, la implementación en la nube es la más sencilla.

¿Es posible dividir un PDF por marcadores en lugar de por texto?

No con esta acción. Dividir PDF por texto Coincidencias solo en la capa de texto. Si sus documentos fuente contienen marcadores fiables, los equivalentes más cercanos de PDF4me son: PDF dividido por número de página, o Dividir PDF por código de barras cuando se utilizan hojas separadoras.

En la práctica, un marcador de texto es más fiable que un marcador de página en material escaneado, porque los escáneres no crean marcadores de página, pero sí conservan lo que estaba impreso en la página.


Solución de problemas

El proceso se ejecuta, pero solo aparece un archivo en Dropbox.

La acción Crear archivo está fuera del bucle Para cada, o el bucle apunta al token incorrecto. Abra el bucle y confirme que lee cuerpo/documentos divididosy compruebe que la función Crear archivo se encuentre dentro del límite del bucle y no debajo de él.

La división devuelve el archivo original, sin cambios.

No se encontró ninguna página que coincidiera con el texto de búsqueda, por lo que no había nada que recortar. Primero, compruebe las mayúsculas y minúsculas, ya que la coincidencia distingue entre mayúsculas y minúsculas. A continuación, abra el PDF e intente seleccionar el texto del marcador con el cursor. Si no se resalta, el documento no tiene capa de texto y necesita OCR antes de que esta acción pueda detectarlo.

Cada archivo de salida tiene un desfase de una página.

El tipo de división está configurado con un valor incorrecto. Con antes, la página que contiene el marcador inicia un nuevo documento. Con después, finaliza el anterior. Cambia la configuración y vuelve a ejecutarlo.

El flujo se sigue activando a sí mismo.

La carpeta de salida es la misma carpeta que supervisa el activador, por lo que cada archivo dividido inicia otra ejecución. Apunte Crear archivo a una carpeta separada, en este caso Dropbox. /SalidaScanSplit camino, y el ciclo se detiene.


Próximos pasos

El mismo patrón de cuatro pasos (vigilar una carpeta, dividir por un marcador, recorrer la matriz, guardar cada parte) gestiona cualquier lote de documentos que necesite convertirse en muchos.