Lewati ke konten utama

Pisahkan PDF berdasarkan Teks di Power Automate: Ubah Satu Kumpulan Hasil Pemindaian Menjadi File Terpisah dengan PDF4me

· Satu menit membaca
SEO and Content Writer

PDF4me Pisahkan PDF berdasarkan Teks adalah tindakan Power Automate yang memotong satu PDF menjadi beberapa file di mana pun penanda teks muncul. Alur ini memantau folder SharePoint, memisahkan setiap pemindaian baru berdasarkan Serial#: Kemudian, penanda tersebut menyimpan hasilnya ke Dropbox. Satu pemindaian batch menghasilkan tiga file bernama, tanpa perlu memilih halaman secara manual.

Siapa pun yang mengoperasikan pemindai pasti tahu masalahnya. Seseorang menjatuhkan setumpuk dokumen ke tempat pengumpan, menekan tombol pindai sekali, dan Anda mendapatkan satu file PDF yang berisi dua puluh catatan yang tidak terkait. Setiap pemisah dokumen online di halaman pertama Google akan dengan senang hati memperbaikinya, selama ada manusia yang mengunggah file, memilih halaman, dan mengunduh bagian-bagiannya. Itu tidak masalah jika dilakukan sekali. Tapi tidak baik jika pemindai dijalankan setiap pagi. Alur ini sepenuhnya menghilangkan peran manusia.

Alur secara sekilas
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.
Versi singkatnya

Hasil pemindaian masuk ke pustaka SharePoint. PDF4me membaca lapisan teks, menemukan setiap halaman yang memulai catatan baru, dan mengembalikan serangkaian file PDF terpisah. Sebuah perulangan "For each" menelusuri rangkaian tersebut dan memasukkan setiap file ke Dropbox. Empat tindakan, tanpa perlu menulis ekspresi, dan seluruh proses selesai dalam waktu kurang dari enam detik.

Tanya Jawab Berbasis Alasan

Mengapa dipisahkan berdasarkan teks, bukan jumlah halaman? Penghitung halaman hanya berfungsi jika setiap catatan memiliki panjang yang sama. Batch sebenarnya tidak seragam. Satu faktur membutuhkan satu halaman, faktur berikutnya membutuhkan empat halaman. Penanda teks mengikuti catatan, sehingga pembagian tetap benar tidak peduli bagaimana panjangnya berubah.

Mengapa PDF memerlukan lapisan teks? Tindakan ini mencari teks di dalam dokumen, bukan pikselnya. Foto atau hasil pindaian flatbed tanpa OCR tidak memiliki teks untuk dicari, sehingga setiap kecocokan akan menghasilkan hasil kosong. Jalankan OCR terlebih dahulu dan alur yang sama akan berfungsi pada dokumen asli berupa kertas.

Mengapa menggunakan perulangan For each setelah pemisahan? Tindakan tersebut mengembalikan sebuah array, bukan sebuah file tunggal. Power Automate tidak dapat menulis array ke penyimpanan dalam satu langkah, sehingga perulangan tersebut mengubah "tiga dokumen" menjadi tiga panggilan Buat file terpisah.

Mengapa mengirimkan output ke Dropbox dan bukan kembali ke SharePoint? Kebiasaan, sebagian besar, ditambah lagi ini menjaga agar folder input dan output tetap terpisah secara visual saat Anda melakukan pengujian. Ganti tindakan terakhir dengan SharePoint Create file dan tidak ada hal lain dalam alur kerja yang berubah.


Apa yang Akan Anda Dapatkan

Masukan: satu file PDF berisi banyak rekaman yang dimasukkan ke dalam pustaka dokumen SharePoint, di mana setiap rekaman dimulai dengan baris yang berbunyi Serial#: SPTEST-A, Serial#: SPTEST-Bdan seterusnya. Keluaran: Satu file PDF untuk setiap catatan dalam folder Dropbox, yang masing-masing berisi persis halaman-halaman yang terkait dengan catatan tersebut.

Pustaka Dokumen SharePoint yang menampilkan folder ScanSplitInput yang berisi scan-split-test.pdf dan sharepoint-trigger-test.pdf, keduanya dimodifikasi oleh akun Pdf4me Flow.

Folder SharePoint yang dipantau. Apa pun yang masuk ke sini akan memulai sebuah proses.

Daftar folder Dropbox ScanSplitOutput berisi sharepoint-trigger-test 1.pdf, sharepoint-trigger-test 2.pdf, dan sharepoint-trigger-test 3.pdf yang dihasilkan oleh pemisahan tersebut.

Satu hasil pindaian tiga halaman, menghasilkan tiga file PDF bernomor terpisah.


Apa yang Anda Butuhkan

  • Power Automate. Open Power AutomateLisensi Microsoft 365 standar mencakup semua yang digunakan di sini. Ini adalah alur kerja berbasis cloud, bukan Power Automate Desktop.
  • Kunci API PDF4me. Dapatkan kunci API AndaHubungkan saat pertama kali Anda menambahkan aksi PDF4me.
  • Situs SharePoint dan akun DropboxBuat folder input di pustaka dokumen SharePoint dan folder output di Dropbox sebelum Anda membuat alur kerja, sehingga kedua pemilih memiliki tempat untuk mengarahkan file.
  • PDF uji dengan penanda teks berulang. scan-batch-sample.pdfTiga halaman, masing-masing diawali dengan baris Nomor Seri tersendiri.

Ambil sampelnya dulu. Unduh PDF input dan unggah ke folder input SharePoint Anda setelah alur kerja disimpan. Tiga file output yang diharapkan juga ada di sini, sehingga Anda dapat membandingkannya dengan hasil yang dihasilkan oleh proses Anda sendiri.


Gambaran Alur Secara Singkat

  1. Saat sebuah file dibuat di dalam sebuah folder (Pemicu SharePoint) diarahkan ke /Shared Documents/ScanSplitInput.
  2. PDF - Pisahkan PDF berdasarkan Teks (PDF4me) dengan teks pencarian Serial#:(.*) dan Tipe Terpisah before.
  3. Untuk setiap mengulangi body/splitedDocuments.
  4. Buat berkas (Dropbox) menulis ke /ScanSplitOutput.

Gambaran alur lengkap

Riwayat eksekusi Power Automate menunjukkan empat tindakan yang berhasil secara berurutan: SharePoint Saat file dibuat di folder pada 0,3 detik, PDF Pisahkan PDF berdasarkan Teks pada 0,4 detik, Untuk setiap tindakan pada 4 detik menunjukkan iterasi 1 dari 3, dan Dropbox Buat file pada 1 detik.

Alur keseluruhannya terdiri dari empat tindakan. Untuk setiap penghitung yang bertuliskan "1 dari 3", itu adalah proses pemisahan yang sedang berjalan.


Langkah 1: Bagaimana cara memantau folder SharePoint untuk pemindaian baru?

Alur sejauh ini: Belum ada apa-apa, ini pemicunya.

Pemicu ini aktif setiap kali sebuah file muncul di folder pustaka dokumen tertentu. Pilih foldernya secara spesifik. Jika Anda mengarahkan ini ke akar pustaka bersama, setiap unggahan yang tidak terkait akan memulai proses ini.

  1. Buat yang baru Alur cloud otomatis dan cari di daftar pemicu untuk Saat sebuah file dibuat di dalam sebuah folder.
  2. Konfigurasi:
    • Alamat Situs: situs Anda, misalnya PDF4me Sharepoints - https://ynoox1.sharepoint.com/sites/PDF4meSharepoints
    • ID Folder: /Shared Documents/ScanSplitInput
  3. Membuka Parameter lanjutan dan nyalakan Menentukan jenis kontenlalu atur ke Yes.

Konfigurasi pemicu SharePoint

Power Automate Saat file dibuat di dalam folder, picu panel dengan Alamat Situs diatur ke PDF4me Sharepoints, ID Folder diatur ke /Shared Documents/ScanSplitInput, dan parameter lanjutan Infer content type diatur ke Ya.

Pengaturan "Infer content type" yang dis设 ke "Yes" (Ya) adalah yang membuat pemicu memberikan Anda byte PDF asli, bukan blob generik.

Tip. Pemicu ini memiliki label "(usang)" di pemilih. Pemicu ini masih berjalan, dan inilah yang ditampilkan di sini, tetapi untuk alur produksi yang baru, lebih baik gunakan yang lain. Saat file dibuat (hanya properti) diikuti oleh Dapatkan isi fileAlur selanjutnya identik, karena kedua rute berakhir dengan byte file yang tersedia. Microsoft mencantumkan setiap pemicu dan statusnya di dalam Referensi konektor SharePoint.


Langkah 2: Bagaimana Split PDF by Text menentukan bagian mana yang akan dipotong?

Alur sejauh ini: Pemicu SharePoint.

Inilah bagian yang melakukan pekerjaan sebenarnya. Bagian ini membaca lapisan teks dokumen, menemukan setiap halaman yang berisi teks pencarian Anda, dan memotong dokumen pada halaman-halaman tersebut. Selebihnya hanyalah proses pendukung.

  1. Tambahkan langkah baru dan cari PDF - Pisahkan PDF berdasarkan Teks.
  2. Konfigurasi:
    • Isi File: File Content dari pemicu
    • Nama File: x-ms-file-name-encoded dari pemicu
    • Teks: Serial#:(.*)
    • Tipe Terpisah: before
    • Penamaan File Terpisah: NameAsPerOrder
  3. Hubungkan akun PDF4me Anda saat diminta untuk terhubung.

Pisahkan PDF berdasarkan parameter Teks

ParameterNilai yang digunakan di siniApa yang dikendalikannya
Isi FileFile Content dari pemicuData PDF yang akan dipisahkan. Harus berupa PDF asli dengan lapisan teks yang dapat dicari.
Nama Filex-ms-file-name-encodedNama sumber digunakan untuk identifikasi pemrosesan dan sebagai dasar untuk nama keluaran.
TeksSerial#:(.*)Penanda yang memulai catatan baru. Pencocokan peka terhadap huruf besar dan kecil, jadi serial#: tidak akan menemukan apa pun.
Tipe TerpisahbeforePotong tepat sebelum setiap halaman yang cocok, sehingga halaman penanda membuka dokumennya sendiri. Gunakan after untuk menutup yang sebelumnya sebagai gantinya.
Penamaan File TerpisahNameAsPerOrderMemberi nomor pada hasil produksi sesuai urutan pemotongannya, menghasilkan name 1.pdf, name 2.pdf, name 3.pdf.
Panel tindakan PDF4me PDF Split PDF by Text menampilkan Konten File yang dipetakan dari pemicu SharePoint, Nama File yang dipetakan ke x-ms-file-name-encoded, Teks diatur ke pola pencarian Serial#, Tipe Pemisahan diatur ke before, dan Penamaan File Pemisahan diatur ke NameAsPerOrder.

Tipe Pemisahan sebelumnya adalah perbedaan antara penanda yang membuka rekamannya dan menutup rekaman di atasnya. Jika dibalik, setiap file akan bergeser satu halaman.

Tip. Pilih penanda yang tidak dapat muncul di tempat lain dalam dokumen. Serial#: aman. Sebuah kata sederhana seperti Invoice Tidak, karena itu juga akan cocok dengan frasa "Total faktur" di tengah halaman dan terbagi di sana juga.


Langkah 3: Mengapa Anda membutuhkan perulangan For each di sini?

Alur sejauh ini: SharePoint trigger plus Split PDF by Text.

Aksi pemisahan mengembalikan sebuah array yang disebut splitedDocumentsSetiap entri berisi satu file output. Power Automate tidak memiliki cara untuk menulis seluruh array ke penyimpanan dalam satu tindakan, jadi array harus diproses satu entri per satu.

  1. Tambahkan Kontrol bertindak dan memilih Untuk setiap.
  2. Konfigurasi:
    • Pilih output dari langkah sebelumnya: body/splitedDocuments dari tindakan Pisahkan PDF berdasarkan Teks
  3. Biarkan konkurensi loop pada pengaturan default-nya. File-file ini berukuran kecil, dan urutannya lebih mudah dibaca jika eksekusinya tetap berurutan. Microsoft mendokumentasikan batasan konkurensi dan penestingan di dalam Berlaku untuk setiap referensi.

Untuk setiap konfigurasi

Power Automate Untuk setiap panel tindakan dengan bidang Pilih output dari langkah sebelumnya yang diisi dengan token body/splitedDocuments dari tindakan PDF4me Pisahkan PDF berdasarkan Teks

Satu token mewakili seluruh konfigurasi. Jika Power Automate membungkus tindakan Buat file Anda dalam sebuah perulangan secara otomatis, berarti Power Automate sudah melakukannya untuk Anda.

Inilah satu baris yang menentukan apakah alur tersebut berjalan dengan baik. Jika Anda mengarahkan loop ke selain badan/dokumen terpisah, tindakan Buat file di dalamnya akan dijalankan sekali dengan muatan yang salah atau tidak dijalankan sama sekali.


Langkah 4: Bagaimana cara Anda menyimpan setiap file yang telah dipisah ke Dropbox?

Alur sejauh ini: Pemicu SharePoint ditambah Pisahkan PDF berdasarkan Teks ditambah Untuk setiap item.

Di dalam perulangan, setiap iterasi mengekspos file yang sedang dipisahkan melalui dua token: fileName Dan streamFile. Petakan mereka lurus ke seberang.

  1. Di dalam Untuk setiap blok, tambahkan Dropbox bertindak dan memilih Buat berkas.
  2. Konfigurasi:
    • Jalur Folder: /ScanSplitOutput
    • Nama File: fileName
    • Isi File: streamFile
  3. Hubungkan akun Dropbox Anda saat diminta.

Dropbox Buat konfigurasi file

Panel aksi Buat file Dropbox di dalam perulangan For each dengan Jalur Folder diatur ke /ScanSplitOutput, Nama File dipetakan ke token fileName dan Konten File dipetakan ke token streamFile dari aksi pemisahan PDF4me.

fileName dan streamFile berasal dari item loop saat ini, bukan dari pemicu. Kedua token tersebut membawa ikon PDF4me.

Tip. Pastikan folder output berbeda dari folder input. Menulis file yang telah dipisah kembali ke folder yang dipantau oleh pemicu akan menciptakan perulangan yang memicu ulang outputnya sendiri, yang merupakan cara yang mahal untuk menemukan masalah.


Jalankan Alur dan Verifikasi

  1. Menyimpan Aliran di kanan atas.
  2. Mengunggah scan-batch-sample.pdf ke dalam folder SharePoint yang dipantau oleh trigger. Trigger melakukan polling, jadi beri waktu satu menit daripada mengharapkan eksekusi instan.
  3. Buka alirannya riwayat eksekusi dan pastikan keempat tindakan tersebut memiliki tanda centang hijau. Bagian "Untuk setiap blok" menunjukkan penghitung, dan seharusnya terbaca 1 dari 3 untuk file contoh.
  4. Membuka /ScanSplitOutput di Dropbox. Anda akan melihat tiga file PDF bernomor 1, 2, dan 3, yang masing-masing berisi tepat satu catatan Serial#.

Apa yang sebenarnya kamu bangun? Pemisah dokumen yang peka terhadap isi. Empat tindakan yang sama berfungsi pada setiap batch di mana setiap catatan mengumumkan dirinya sendiri dengan string yang konsisten, baik itu nomor faktur, ID pasien, referensi kasus, atau judul bab. Tindakan PDF4me yang sama ada di Membuat, Zapier Dan n8nJadi, pola tersebut berpindah dari satu platform ke platform lain dengan hanya langkah pemicu dan penyimpanan yang berubah.


Variasi Umum yang Dapat Anda Tambahkan Tanpa Membangun Ulang

OCR pada hasil pindaian terlebih dahulu
Dokumen asli dalam bentuk kertas tidak memiliki lapisan teks. Sisipkan aksi OCR PDF4me di antara pemicu dan pemisahan, dan pemindaian hanya gambar akan mulai mencocokkan penanda yang sama.
Pisahkan berdasarkan kode batang sebagai gantinya
Jika pemindai Anda memasukkan lembaran pemisah, tukar tindakannya dengan Pisahkan PDF berdasarkan Kode Batang. Perulangan yang sama, pembuatan file yang sama, metode deteksi yang berbeda.
Rute berdasarkan konten
Tambahkan kondisi di dalam perulangan yang membaca nama file saat ini dan menulis ke folder yang berbeda untuk setiap awalan. Satu pemindaian kemudian menyebar ke beberapa tujuan.
PDF4me vs alternatifnya
Lihat tabel perbandingan di bawah ini untuk mengetahui perbedaan pendekatan ini dengan splitter online manual dan Power Automate Desktop.
Alur kerja berbasis cloud vs alternatifnyaBerjalan tanpa pengawasanPerpecahan dalam kontenMembutuhkan komputer desktop.
PDF4me dalam alur kerja cloud Power Automate.YaYa, pada penanda teks apa punTIDAK
Pembagi online manualTidak, setiap file diunggah oleh manusia.Terkadang, dengan pemilih halamanTIDAK
Power Automate DesktopHanya saat mesin menyalaTergantung pada tindakan yang terpasang.Ya

Pertanyaan umum

Bagaimana cara membagi PDF di Power Automate?

Tambahkan PDF - Pisahkan PDF berdasarkan Teks Tindakan dari PDF4me ke alur cloud, memetakan byte PDF ke Isi File, dan berikan itu Teks nilai yang dicari. Aksi ini mengembalikan array PDF terpisah dalam body/splitedDocumentsBungkus tindakan penyimpanan seperti Dropbox Buat berkas di sebuah Untuk setiap Lakukan perulangan pada array tersebut dan setiap bagiannya akan disimpan.

Tidak ada penulisan ekspresi yang terlibat. Keempat tindakan yang ditunjukkan dalam postingan ini adalah keseluruhan alurnya.

Bisakah Power Automate membagi PDF berdasarkan konten?

Ya, itulah tepatnya yang dilakukan alur ini. Power Automate tidak memiliki tindakan pemisahan PDF bawaan, jadi kesadaran konten berasal dari konektor PDF4me. Konektor ini membaca lapisan teks dokumen dan memotong di mana pun string pencarian Anda muncul, yang berarti pemisahan mengikuti catatan dan bukan jumlah halaman tetap.

Satu-satunya syarat adalah lapisan teks yang sebenarnya. Hasil pemindaian yang belum pernah melalui OCR hanyalah gambar kata-kata sejauh menyangkut pencarian.

Bagaimana cara membagi file PDF menjadi beberapa file di Power Automate?

Proses pemisahan itu sendiri adalah satu tindakan, tetapi mengambil beberapa file darinya membutuhkan dua tindakan. Pisahkan PDF berdasarkan Teks menghasilkan array, dan sebuah Untuk setiap Loop tersebut mengubah array menjadi satu panggilan Create file per dokumen. Melewatkan loop adalah alasan paling umum mengapa orang akhirnya hanya mendapatkan satu file output, bukan beberapa.

Dalam contoh yang dijalankan di sini, pemindaian tiga rekaman menghasilkan tiga file bernama sharepoint-trigger-test 1.pdf melalui sharepoint-trigger-test 3.pdf, Karena Penamaan File Terpisah ditetapkan untuk NameAsPerOrder.

Apakah fungsi pemisahan PDF berfungsi di Power Automate Desktop?

Alur ini adalah alur berbasis cloud, dan itu disengaja. Alur ini berjalan di infrastruktur Microsoft setiap kali file masuk ke SharePoint, tanpa mesin yang perlu dihidupkan dan tanpa gateway yang perlu dipelihara. Power Automate Desktop dapat memanggil API PDF4me yang sama, tetapi Anda perlu mengelola mesin terjadwal dan waktu aktifnya.

Jika dokumen Anda sudah tersimpan di SharePoint, OneDrive, atau Dropbox, alur migrasi ke cloud adalah cara yang lebih sederhana.

Bisakah Anda memisahkan PDF berdasarkan bookmark, bukan teks?

Bukan dengan tindakan ini. Pisahkan PDF berdasarkan Teks Pencocokan hanya dilakukan pada lapisan teks. Jika dokumen sumber Anda memiliki bookmark yang andal, padanan PDF4me terdekat adalah PDF terpisah berdasarkan nomor halaman, atau Pisahkan PDF berdasarkan Kode Batang ketika lembaran pemisah digunakan.

Dalam praktiknya, penanda teks lebih dapat diandalkan daripada pembatas buku pada materi yang dipindai, karena pemindai tidak membuat pembatas buku tetapi mempertahankan apa pun yang tercetak di halaman tersebut.


Penyelesaian Masalah

Alur berjalan tetapi hanya satu file yang muncul di Dropbox.

Tindakan Buat file berada di luar perulangan For each, atau perulangan tersebut mengarah ke token yang salah. Buka perulangan dan pastikan terbaca badan/dokumen terpisah, dan pastikan bahwa perintah Create file berada di dalam batas loop, bukan di bawahnya.

Hasil pemisahan mengembalikan file asli tanpa perubahan.

Tidak ada halaman yang cocok dengan teks pencarian, jadi tidak ada yang bisa dipotong. Periksa huruf besar/kecil terlebih dahulu, karena pencocokan peka terhadap huruf besar/kecil. Kemudian buka PDF dan coba pilih teks penanda dengan kursor Anda. Jika tidak disorot, dokumen tersebut tidak memiliki lapisan teks dan memerlukan OCR sebelum tindakan ini dapat melihat apa pun.

Setiap file output selisih satu halaman.

Tipe Pemisahan diatur ke nilai yang salah. Dengan sebelum, halaman yang memuat penanda memulai dokumen baru. Dengan setelah, ini mengakhiri yang sebelumnya. Ubah pengaturan dan jalankan kembali.

Alur tersebut terus memicu dirinya sendiri.

Folder output adalah folder yang sama yang dipantau oleh pemicu, jadi setiap file yang dipisah memulai proses baru. Arahkan pembuatan file ke folder terpisah, dalam hal ini Dropbox. /ScanSplitOutput jalur tersebut, dan siklus pun berhenti.


Langkah Selanjutnya

Pola empat langkah yang sama (memantau folder, memisahkan berdasarkan penanda, mengulang array, menyimpan setiap bagian) dapat digunakan untuk menangani dokumen batch apa pun yang perlu dipecah menjadi banyak bagian.