Dalam binaan ini, kami sedang membina alat yang direka untuk industri logistik. Alat ini akan mengautomasikan pengekstrakan data berstruktur daripada lampiran PDF (seperti permintaan untuk petikan atau helaian maklumat penghantaran) dalam e-mel, membolehkan data ini digunakan di tempat lain dalam aliran kerja.
Untuk menjadikan perkara lebih mudah difahami, mari gunakan Nova Logistics sebagai contoh—sebuah syarikat fiksyen yang pakar dalam mengangkut barang elektronik yang rapuh merentasi pelbagai bandar.
Di Nova Logistics, pelanggan menghubungi melalui e-mel untuk meminta sebut harga bagi item penghantaran antara bandar dan mereka biasanya melampirkan PDF yang mengandungi semua butiran penghantaran yang diperlukan. Pada masa ini, prosesnya adalah manual: seseorang di Nova perlu membuka setiap e-mel, memuat turun PDF yang dilampirkan, membacanya dan mengeluarkan maklumat penting seperti nama dan kuantiti item sebelum mengira kos penghantaran.
Ini boleh mengambil masa berjam-jam, terutamanya apabila terdapat berbilang e-mel setiap hari, setiap satu dengan dokumen PDF yang panjang.
Dalam artikel ini, kami akan meneruskan pembinaan alat untuk mengautomatikkan keseluruhan proses ini—daripada mengambil e-mel dan mengekstrak data PDF kepada menghantar maklumat yang diekstrak ke Helaian Google.
Bagaimana Ia Berfungsi
- E-mel Tinjauan: Pertama, kami akan menyediakan sistem untuk menyemak e-mel baharu dari peti masuk secara kerap. Sebaik sahaja e-mel ditemui, kami akan memuat turun lampiran PDF dan menggunakan label pada e-mel supaya ia tidak ditinjau lagi pada masa hadapan.
- Ekstrak Data dengan Documind: Kami akan menyerahkan PDF sebagai URL kepada Documind, pakej sumber terbuka yang menggunakan AI untuk mengekstrak data berstruktur daripada dokumen. Ini akan memberi kami maklumat seperti nama item, kuantiti, butiran penghantaran, berat dan banyak lagi.
- Simpan dan Gunakan Data: Akhir sekali, kami akan menghantar data yang diekstrak ke Helaian Google, menjadikannya mudah untuk dilihat, dijejaki dan digunakan untuk pengiraan selanjutnya.
Apa yang Kami Perlukan
Untuk membina alat ini, kami memerlukan pakej berikut:
- API Gmail: Untuk mengambil e-mel daripada peti masuk.
- Supabase: Untuk memuat naik dan menyimpan PDF.
- Documind: Untuk mengekstrak data berstruktur daripada PDF.
- API Helaian Google: Untuk menyimpan data yang diekstrak dan mengira petikan.
- Nango: Untuk mengurus pengesahan pengguna
Langkah 1: Persediaan awal
Sebelum kita mula menulis kod, kita perlu menyediakan beberapa perkara. Jangan risau; Saya akan membimbing anda melalui setiap langkah.
1.1 Pasang Node.js
Kami akan menggunakan Node.js untuk menjalankan kod kami. Jika anda belum memasang Node.js, pergi ke tapak web Node.js dan muat turun versi terkini.
1.2 Pasang Perpustakaan Diperlukan
Setelah Node.js dipasang, kami perlu memasang pakej yang akan membantu kami berinteraksi dengan Gmail, Helaian Google, Supabase dan Documind.
- Buka terminal atau gesaan arahan.
-
Buat folder baharu untuk projek anda dengan menjalankan:
mkdir nova cd nova
-
Mulakan projek:
npm init -y
-
Pasang pakej yang diperlukan:
npm install googleapis @supabase/supabase-js documind dotenv @nangohq/node
1.3 Dapatkan Bukti Kelayakan API
Sebelum kami boleh mula menulis kod, anda perlu menyediakan dan mendapatkan semua bukti kelayakan untuk menggunakan API Google (Gmail dan Helaian Google), Supabase dan Documind. Berikut ialah panduan ringkas untuk setiap:
API Google
- Pergi ke Google Cloud Console.
- Daripada senarai projek, pilih projek atau buat projek baharu
- Dayakan API Gmail dan API Helaian Google untuk projek anda:
- Pergi ke Pustaka API dalam Cloud Console dan cari "API Gmail" dan "API Helaian Google". Klik pada setiap satu dan dayakannya.
- Konfigurasikan skrin persetujuan anda:
- Pergi ke API & Perkhidmatan > Skrin persetujuan OAuth.
- Beri nama apl anda.
- Pilih "Luaran" sebagai jenis khalayak anda.
- Isi mana-mana medan lain yang diperlukan.
- Buat bukti kelayakan OAuth 2.0:
- Pergi ke API & Perkhidmatan > Bukti kelayakan.
- Klik pada Cipta Bukti Kelayakan dan pilih ID Klien OAuth.
- Pilih “Aplikasi web” sebagai jenis aplikasi.
- Salin ID dan Rahsia Pelanggan anda.
- Untuk mengurus OAuth pengguna dengan mudah merentas berbilang platform, saya menggunakan Nango. Anda boleh menyemak dokumentasi mereka tentang cara untuk bermula:
- Log masuk ke Nango dan klik pada Konfigurasi Integrasi Baharu.
- Cari Google Mail dalam senarai penyepaduan.
- Tambahkan ID Pelanggan dan Rahsia yang anda salin.
- Dalam medan untuk skop, tambahkan https://www.googleapis.com/auth/gmail.readonly , https://www.googleapis.com/auth/gmail.modify dan https://www.googleapis. com/auth/gmail.labels
- Salin URL panggil balik untuk penyepaduan dan simpan.
- Kembali ke Bukti kelayakan pada konsol Google anda dan tambahkan URL panggil balik sebagai URI ubah hala yang dibenarkan.
Memandangkan kami juga menggunakan API Helaian Google, anda hanya boleh melalui langkah 6 untuk membuat penyepaduan lain di Nango. Cari integrasi Helaian Google dan gunakan ID Pelanggan dan Rahsia yang sama yang anda salin. Dalam ruang untuk skop, tambahkan https://www.googleapis.com/auth/spreadsheets
Untuk menerbitkan apl anda, pergi ke skrin persetujuan OAuth dalam konsol Google dan klik pada butang Terbitkan.
Supabase
- Daftar untuk mendapatkan akaun percuma di Supabase.
- Buat projek dan baldi baharu untuk menyimpan PDF.
- Dapatkan URL API dan Kunci API daripada tetapan projek anda.
Langkah 2: Tulis kod
Sekarang mari tulis kod dalam langkah kecil.
2.1 Tambah pembolehubah persekitaran
Buat fail .env untuk menyimpan semua pembolehubah penting yang akan digunakan sepanjang kod. Berikut ialah contoh:
mkdir nova cd nova
Kami akan membincangkan cara mendapatkan dan menggunakan pembolehubah ini dengan lebih lanjut dalam kod.
2.2 Sediakan API Gmail dan ambil e-mel
Kami akan bermula dengan menggunakan API Gmail untuk mengambil e-mel yang tidak mempunyai label Diproses dan mengandungi lampiran.
Untuk mendapatkan semula token akses yang diperlukan, kami akan menggunakan Nango, yang akan mengendalikan muat semula token secara automatik jika ia tamat tempoh, jadi anda tidak perlu risau tentang mengurus sendiri kitaran hayat token.
Apa yang anda perlukan ialah:
- ID Penyepaduan daripada persediaan Gmail di Nango.
- ID Sambungan untuk pengguna yang token aksesnya diperlukan.
- Kunci rahsia Nango anda.
Anda boleh menambah sambungan baharu dengan mudah melalui UI Nango menggunakan akaun Gmail anda sendiri. Kunci rahsia anda boleh didapati di bahagian tetapan persekitaran papan pemuka Nango.
npm init -y
Untuk memudahkan, kami akan mengehadkan keputusan kepada hanya lima e-mel pada satu masa dan kami akan menapis secara khusus untuk hanya mengambil e-mel yang mempunyai lampiran PDF. Daripada itu, kami hanya akan mendapatkan lampiran pertama untuk diproses. Selepas memuat turun lampiran, kami akan menandakan e-mel sebagai diproses dengan menggunakan label, memastikan bahawa ia tidak akan diambil lagi dalam kitaran pengundian akan datang.
2.2 Muat naik ke Supabase
Seterusnya, kami perlu memuat naik PDF yang dimuat turun ke Supabase. Pastikan anda menggantikan nama baldi dalam kod dengan nama anda.
npm install googleapis @supabase/supabase-js documind dotenv @nangohq/node
2.3 Ekstrak data menggunakan Documind
Setelah PDF disimpan dalam Supabase, kami akan menggunakan Documind untuk mengekstrak data yang berkaitan. Memandangkan ia memanfaatkan OpenAI untuk pemprosesan, pastikan Kunci API anda ditambahkan pada fail .env.
Documind berfungsi dengan skema yang anda tentukan untuk mengekstrak data berstruktur yang anda perlukan. Kami akan membincangkan definisi skema sebentar lagi, tetapi jangan ragu untuk menyemak dokumentasi untuk mendapatkan butiran lanjut.
SUPABASE_API_KEY=<supabase api key> SUPABASE_URL=<supabase url> OPENAI_API_KEY=<open ai api key> NANGO_KEY=<nango secret key> </nango></open></supabase></supabase>
2.4 Hantar data yang diekstrak ke Helaian Google
Selepas mengekstrak data daripada PDF, kami akan menghantarnya ke Helaian Google.
Sebelum meneruskan, pastikan Helaian Google anda disediakan dan anda telah membuat sambungan dengan akaun anda melalui Nango. Jika anda belum melakukannya, berikut ialah templat yang boleh anda gunakan untuk bermula.
mkdir nova cd nova
Langkah 3: Menggabungkan segala-galanya
Sekarang kita telah menulis fungsi individu, kita perlu menyatukan segala-galanya.
Dalam langkah ini, kami akan mentakrifkan skema yang akan digunakan oleh Documind untuk mengekstrak data yang diperlukan. Skema ini akan membimbing AI dalam mengenal pasti dan menstruktur maklumat yang berkaitan daripada PDF.
npm init -y
Uji Kod
Kod sumber penuh tersedia di GitHub, bersama-sama dengan sampel PDF untuk ujian. Walau bagaimanapun, anda dialu-alukan untuk membuat dan menggunakan dokumen anda sendiri juga. Hanya mengklon repositori, ubah suai kod agar sesuai dengan keperluan anda dan cuba untuk kes penggunaan anda sendiri.
Atas ialah kandungan terperinci Tukar E-mel Tidak Berstruktur kepada Data Boleh Tindakan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Aplikasi JavaScript di dunia nyata termasuk pengaturcaraan sisi pelayan, pembangunan aplikasi mudah alih dan Internet of Things Control: 1. Pengaturcaraan sisi pelayan direalisasikan melalui node.js, sesuai untuk pemprosesan permintaan serentak yang tinggi. 2. Pembangunan aplikasi mudah alih dijalankan melalui reaktnatif dan menyokong penggunaan silang platform. 3. Digunakan untuk kawalan peranti IoT melalui Perpustakaan Johnny-Five, sesuai untuk interaksi perkakasan.

Saya membina aplikasi SaaS multi-penyewa berfungsi (aplikasi edTech) dengan alat teknologi harian anda dan anda boleh melakukan perkara yang sama. Pertama, apakah aplikasi SaaS multi-penyewa? Aplikasi SaaS Multi-penyewa membolehkan anda melayani beberapa pelanggan dari Sing

Artikel ini menunjukkan integrasi frontend dengan backend yang dijamin oleh permit, membina aplikasi edtech SaaS yang berfungsi menggunakan Next.Js. Frontend mengambil kebenaran pengguna untuk mengawal penglihatan UI dan memastikan permintaan API mematuhi dasar peranan

JavaScript adalah bahasa utama pembangunan web moden dan digunakan secara meluas untuk kepelbagaian dan fleksibiliti. 1) Pembangunan front-end: Membina laman web dinamik dan aplikasi satu halaman melalui operasi DOM dan kerangka moden (seperti React, Vue.js, sudut). 2) Pembangunan sisi pelayan: Node.js menggunakan model I/O yang tidak menyekat untuk mengendalikan aplikasi konkurensi tinggi dan masa nyata. 3) Pembangunan aplikasi mudah alih dan desktop: Pembangunan silang platform direalisasikan melalui reaktnatif dan elektron untuk meningkatkan kecekapan pembangunan.

Trend terkini dalam JavaScript termasuk kebangkitan TypeScript, populariti kerangka dan perpustakaan moden, dan penerapan webassembly. Prospek masa depan meliputi sistem jenis yang lebih berkuasa, pembangunan JavaScript, pengembangan kecerdasan buatan dan pembelajaran mesin, dan potensi pengkomputeran IoT dan kelebihan.

JavaScript adalah asas kepada pembangunan web moden, dan fungsi utamanya termasuk pengaturcaraan yang didorong oleh peristiwa, penjanaan kandungan dinamik dan pengaturcaraan tak segerak. 1) Pengaturcaraan yang didorong oleh peristiwa membolehkan laman web berubah secara dinamik mengikut operasi pengguna. 2) Penjanaan kandungan dinamik membolehkan kandungan halaman diselaraskan mengikut syarat. 3) Pengaturcaraan Asynchronous memastikan bahawa antara muka pengguna tidak disekat. JavaScript digunakan secara meluas dalam interaksi web, aplikasi satu halaman dan pembangunan sisi pelayan, sangat meningkatkan fleksibiliti pengalaman pengguna dan pembangunan silang platform.

Python lebih sesuai untuk sains data dan pembelajaran mesin, manakala JavaScript lebih sesuai untuk pembangunan front-end dan penuh. 1. Python terkenal dengan sintaks ringkas dan ekosistem perpustakaan yang kaya, dan sesuai untuk analisis data dan pembangunan web. 2. JavaScript adalah teras pembangunan front-end. Node.js menyokong pengaturcaraan sisi pelayan dan sesuai untuk pembangunan stack penuh.

JavaScript tidak memerlukan pemasangan kerana ia sudah dibina dalam pelayar moden. Anda hanya memerlukan editor teks dan penyemak imbas untuk memulakan. 1) Dalam persekitaran penyemak imbas, jalankan dengan memasukkan fail HTML melalui tag. 2) Dalam persekitaran Node.js, selepas memuat turun dan memasang node.js, jalankan fail JavaScript melalui baris arahan.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

Dreamweaver CS6
Alat pembangunan web visual

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.