كيفية تحويل بيانات PDF إلى ذكاء بيانات JSON PlatoBlockchain. البحث العمودي. عاي.

كيفية تحويل بيانات PDF إلى JSON

تعد ملفات PDF من أكثر تنسيقات البيانات استخدامًا لوثائق الأعمال. تعتمد العديد من الشركات والمؤسسات على أدوات متنوعة لإنشاء وقراءة مستندات PDF هذه.

ومع ذلك ، من الصعب استخراج بيانات محددة / مهمة من ملفات PDF بشكل انتقائي.

هذا هو المكان الذي يظهر فيه JSON (Javascript Object Notation) في الصورة.

إنه أحد أكثر تنسيقات البيانات المحبوبة لتبادل المعلومات. خاصة عندما يتعلق الأمر بتطبيقات الويب ، يتم توصيل معظم البيانات باستخدام JSON من خلال واجهات برمجة التطبيقات و استفسارات DB.

في منشور المدونة هذا ، سنلقي نظرة على:

  • كيف تقوم Nanonets بأتمتة تحويل البيانات المعقدة من مستندات PDF المعقدة للأعمال إلى ملفات JSON المهيكلة.
  • بعض التقنيات المجانية مفتوحة المصدر لتحويل ملفات PDF إلى JSON باستخدام وحدات Python و Linux و Javascript.
    • كيفية استخراج بيانات محددة / معقدة من ملفات PDF مثل الجداول وسلاسل نصية محددة.
    • تدفقات عمل مخصصة يمكن أن تساعد في أتمتة عملية تحويل ملفات PDF إلى JSON.

تقوم شبكات النانو بتحويل بيانات PDF محددة إلى مخرجات JSON

هل تريد استخراج بيانات محددة من مستندات PDF وتحويلها إلى JSON؟ الدفع واجهة برمجة تطبيقات Nanonets لأتمتة تحويل PDF إلى JSON من أي نوع من المستندات الفنية!


Nanonets الآلي PDF لتحويل JSON

  • حساب جديد لخطة Nanonets المجانية التي تقدم رصيدًا يبلغ 100 صفحة - لا حاجة لبطاقة ائتمان.
  • أضف مجموعة من ملفات PDF الخاصة بشركتك
  • تلتقط شبكات Nanonets تلقائيًا الحقول من مجموعة من أنواع المستندات (الفواتير والإيصالات ورخصة القيادة وجوازات السفر والجداول)
    • يمكنك أيضًا تدريب الذكاء الاصطناعي في Nanonets على اكتشاف / التقاط حقول البيانات التي تهمك فقط من أي نوع من المستندات!
  • تحقق من البيانات المستخرجة وقم بتصديرها كمخرجات JSON
    • يمكنك أيضًا دمج شبكات النانو مع مجموعة من برامج تخطيط موارد المؤسسات - جدولة مكالمة مع خبرائنا في الذكاء الاصطناعي لاختبار حالة الاستخدام الخاصة بك.
  • تحقق من موقعنا واجهة برمجة تطبيقات OCR لأتمتة PDF إلى سير عمل JSON
كيفية تحويل بيانات PDF إلى ذكاء بيانات JSON PlatoBlockchain. البحث العمودي. عاي.
تحويل PDF إلى JSON باستخدام شبكات النانو

تريد التقاط البيانات من مستندات PDF وتحويلها إلى JSON أو csv أو Excel? اكتشف كيف يمكن أن تساعد شبكات النانو.

كيفية تحويل بيانات PDF إلى ذكاء بيانات JSON PlatoBlockchain. البحث العمودي. عاي.
مستخدم فائق السعادة من مستخدمي Nanonets


الحاجة إلى تحويل PDF إلى JSON

تعتمد كل الأعمال تقريبًا على المستندات لمشاركة المعلومات. يمكن أن تكون هذه الوثائق والفواتير والإقرارات الضريبية والإيصالات والتقارير الطبية وغير ذلك الكثير.

غالبًا ما تتم مشاركة / استلام هذه المستندات كملفات PDF.

ولكن إذا كنت ترغب في البحث عن معلومات مهمة أو إنشاء لوحة معلومات لتحليل جميع المعلومات المهمة وتخزينها ، فإن جمع البيانات يدويًا من ملفات PDF هذه يمكن أن يكون مهمة شاقة.

إذا تم إنشاء ملفات PDF إلكترونيًا ، فيمكننا نسخ المعلومات ولصقها في مصادر البيانات ؛ وإلا ، قد نضطر إلى ذلك استخدام التعرف الضوئي على الحروف وتقنيات التعلم الآلي لاستخراج المعلومات.

أيضًا ، البيانات الموجودة في ملفات PDF ليست منظمة أو يمكن قراءتها آليًا بشكل مباشر. لذلك ، قد نضطر إلى البحث عن المعلومات يدويًا.

ولكن عندما يتعلق الأمر بـ JSON ، يتم تنظيم كل شيء في أزواج ذات قيمة رئيسية. هنا مثال.

{
  "company_name": "Company Name",
  "Invoice_date": "Date ",
  "Invoice_total":"$0.00",
  "Invoice_line_items: "",
  "Invoice_tax": ""
} 

إذا كان بإمكانك رؤية تنسيق JSON أعلاه ، فستكون البيانات أكثر تنظيمًا ، ويمكنك أيضًا مشاركة هذه المعلومات على الويب بشكل أكثر ملاءمة. هذا هو السبب في أن تصدير البيانات من ملفات PDF إلى JSON أمر بالغ الأهمية للعديد من الشركات.

الفوائد التجارية التي تأتي مع JSON

يتمتع تنسيق بيانات JSON بالعديد من المزايا مقارنة بملفات PDF للشركات:

  1. JSON أسرع: بناء جملة JSON سهل الاستخدام ؛ عندما تحاول تحليل أي بيانات JSON ، يكون التنفيذ أسرع بكثير مقارنة بملفات PDF وتنسيقات البيانات الأخرى. هذا لأن بناء الجملة خفيف الوزن وينفذ الاستجابة بسرعة.
  2. المزيد مقروء: بيانات JSON أكثر قابلية للقراءة ؛ سيكون لدينا تخطيط مباشر للبيانات باستخدام المفاتيح والقيم. لذلك ، إذا كنت تبحث عن شيء ما أو تنظم البيانات من ملفات PDF ، فسيكون JSON أكثر ملاءمة. بالإضافة إلى ذلك ، يدعم JSON تداخل البيانات ، وبهذا ، يمكن تخزين البيانات من الجداول بشكل أكثر كفاءة.
  3. مخطط مناسب: JSON عالمي لمعظم أنظمة التشغيل ولغات البرمجة ؛ لذلك ، إذا كنت تقوم بإنشاء أي برنامج أو تطبيق ويب لأتمتة عملك ، فيجب أن يكون JSON هو تنسيق البيانات الصحيح. أيضًا ، تدعم معظم متصفحات الويب تنسيق JSON ؛ ومن ثم لا يتعين علينا بذل جهد إضافي لاستخدام برامج الجهات الخارجية لقراءة بيانات JSON.
  4. مشاركة سهلة: JSON هي أفضل أداة لمشاركة البيانات من أي حجم ، حتى الجداول الكبيرة أو النصوص وما إلى ذلك. وذلك لأن JSON يخزن البيانات في المصفوفات ، لذا فإن نقل البيانات يجعل الوصول إليها أكثر سهولة. لهذا السبب ، JSON هو تنسيق ملف ممتاز لواجهات برمجة تطبيقات الويب وتطوير الويب.

في القسم التالي ، دعنا نلقي نظرة على بعض التحديات التي قد نواجهها عند تحويل ملفات PDF إلى تنسيق JSON.


Nanonets لديها الكثير من الاهتمام استخدم حالات يمكن أن يحسن أداء عملك ويوفر التكاليف ويعزز النمو. اكتشف كيف يمكن تطبيق حالات استخدام Nanonets على منتجك.


تحديات التحويل من PDF إلى JSON

لنلقِ نظرة على بعض التحديات في التصدير من ملفات PDF إلى JSON.

  1. كشف الخطوط: يستخدم الأشخاص خطوطًا وألوانًا ومحاذاة مختلفة داخل مستندات PDF. لذلك ، من الصعب حقًا على الموزعين قراءتها. أيضًا ، أثناء تصدير هذا ، سيتعين علينا تحديد قواعد معينة بحيث بعد أن يستخرج المحلل البيانات ، يجب تعيين جميع المعلومات بشكل صحيح بتنسيق JSON. في مثل هذه الحالات ، تُستخدم التعبيرات النمطية على نطاق واسع لانتقاء نص معين ثم تصديره إلى المفتاح الصحيح بتنسيق JSON.
  2. كشف النص من المستندات الممسوحة ضوئيًا: كما تمت مناقشته ، عندما لا يتم إنشاء ملفات PDF إلكترونيًا ، فسيتعين علينا استخدام OCR واختيار OCR أمر بالغ الأهمية. على الرغم من أن الكثير من المستخدمين يحاولون استخدام أدوات مفتوحة المصدر مثل tesseract ، إلا أن لديهم مجموعة القيود الخاصة بهم. على سبيل المثال ، إذا تم التقاط النص بشكل غير صحيح أو محاذاة بشكل غير صحيح عند الالتقاط ، فقد لا تعمل tesseract ، وقد يكون اختيار الأدوات الأخرى مكلفًا.
  1. تحديد الجداول: تحتوي معظم مستندات الأعمال على معلومات مجدولة ، ويعد تحديد هذه الجداول من مستندات PDF وتحويلها إلى JSON مهمة صعبة. هناك بعض المكتبات القائمة على Python و Java والتي يمكن أن تساعد في استخراج الجداول من مستندات PDF التي تم إنشاؤها إلكترونيًا.
  2. تحديد الجداول من ملفات PDF الممسوحة ضوئيًا: عندما يتم مسح ملفات PDF ضوئيًا ، فإن معظم الحزم لا تعمل. في هذه الحالة ، إذا اخترنا OCR مفتوح المصدر مثل tesseract ، فيمكنه استخراج النص ولكن يمكن أن يفقد كل تنسيقات الجدول. لذلك ، من الصعب اختيار عناصر المخطط التفصيلي بتنسيق غير صحيح. هذا هو المكان الذي سيتعين علينا استخدام الخوارزميات القائمة على التعلم الآلي والتعلم العميق. تعتمد بعض الخوارزميات الشائعة على شبكات CNN ، وكان هناك الكثير من الأبحاث الجارية لتحسين هذه الخوارزميات.

فيما يلي بعض الأوراق البحثية التي تحل مشكلة استخراج الجدول من المستندات:

في القسم التالي ، دعنا نلقي نظرة على كيفية تحليل البيانات من PDF لإنشاء ملفات JSON.

تحليل البيانات من ملفات PDF وإنشاء ملفات JSON باستخدام Python و Linux

لا يعد التحليل من خلال ملفات PDF مهمة معقدة إذا كانت لديك خبرة مطور.

أولاً ، سيتعين علينا التحقق مما إذا كانت ملفات PDF الخاصة بنا تحتوي على بيانات نصية أو تتكون من صور ممسوحة ضوئيًا. سيتعين علينا التحقق مما إذا كان بإمكاننا استخراج البيانات النصية أو تمرير الملفات عبر مكتبة OCR إذا لم يتم إرجاع أي نص.

يمكن تحقيق ذلك باستخدام مكتبة Python أو من خلال الاعتماد على بعض أدوات سطر أوامر Linux.

نص PDF هي واحدة من أكثر المكتبات شيوعًا في تحليل ملفات PDF الإلكترونية. يمكننا استخدام هذا لتحويل جميع بيانات PDF إلى تنسيق نصي ثم دفعها إلى تنسيق JSON.

فيما يلي بعض التعليمات حول كيفية الاستخدام pdftotext وتحليل ملفات PDF على جهاز Linux.

أولاً ، قم بتثبيت أدوات سطر الأوامر:

sudo apt-get install poppler-utils

بعد ذلك ، استخدم pdftotext الأمر وإضافة مسار مصدر ملف PDF وموقع الملف النصي الوجهة.

pdftotext {PDF-file} {text-file}

باستخدام هذا ، يجب أن نكون قادرين على استخراج كل النص المقروء من ملفات PDF.

لإنشاء ملف JSON ، سيتعين علينا العمل مرة أخرى على برنامج نصي بناءً على بياناتنا التي يمكنها تحليل النص وتصديرها إلى أزواج ذات قيمة مفتاح.

إليك مثال على نص برمجي كتبناه بلغة Python يحول ملف .txt ملف بتنسيق JSON.

import json
  
filename = 'data.txt'
 
dict1 = {}
  
with open(filename) as fh:
  
    for line in fh:
        command, description = line.strip().split(None, 1)
        dict1[command] = description.strip()
  
# creating json file
# the JSON file is named as test1
out_file = open("test1.json", "w")
json.dump(dict1, out_file, indent = 4, sort_keys = False)
out_file.close()

ضع في اعتبارك أن البيانات الموجودة داخل الملف النصي هي:

invoice_id #234
invoice_name Invoice from AWS
invoice_total $345

هنا ، قمنا أولاً باستيراد مكتبة JSON المدمجة. نقوم الآن بإنشاء نوع بيانات القاموس لتخزين جميع أزواج المفتاح والقيمة من الملفات النصية. بعد ذلك ، نكرر كل سطر في الملف ونقوم بتجريده من الأوامر والوصف والاحتفاظ به في القاموس الذي تم إنشاؤه. أخيرًا ، نصنع ملف JSON جديدًا ونستخدم امتداد json.dump طريقة لتفريغ القاموس في ملف JSON بتكوين محدد يتضمن الفرز والمسافة البادئة.

ومع ذلك ، فإن بياناتنا من ملفات PDF لن تكون منظمة كما هو موضح في المثال ؛ لذلك ، قد نضطر إلى استخدام خطوط أنابيب مخصصة ونصوص لتصفح تنسيق النص المعقد. في مثل هذه الحالات ، أدوات مثل النانو سيكون خيارًا رائعًا ، وسننظر أيضًا في كيفية حل Nanonets لهذه المشكلة بطريقة أسهل بكثير في الأقسام التالية.

قبل ذلك ، دعنا نلقي نظرة على مكتبة أخرى تقوم بتحويل PDF إلى JSON باستخدام node.js:

pdf2json هو node.js الوحدة النمطية التي تحلل وتحول PDF من تنسيق ثنائي إلى تنسيق JSON ؛ انها بنيت مع pdf.js ويمدها بعناصر نموذج تفاعلية وتحليل محتوى نصي خارج المستعرض.

فيما يلي مثال على استخدام هذه الوحدة لتحليل ملفات JSON:

أولا ، تأكد من أن يكون لديك npm المثبت وتثبيت الوحدة باستخدام الأمر التالي:

npm install pdf2json

بعد ذلك ، في خادم العقدة ، يمكنك استخدام المقتطف التالي الذي يقوم بتحميل ملف pdf2json ويصدر ملفات pdf إلى JSON:

let fs = require('fs'),
        PDFParser = require("pdf2json");
 
    let pdfParser = new PDFParser();
 
    pdfParser.on("pdfParser_dataError", errData => console.error(errData.parserError) );
    pdfParser.on("pdfParser_dataReady", pdfData => {
        fs.writeFile("./pdf2json/test/F1040EZ.json", JSON.stringify(pdfData));
    });
 
    pdfParser.loadPDF("./pdf2json/test/pdf/fd/form/F1040EZ.pdf");

يستخدم مقتطف الشفرة أعلاه مثالًا لملف JSON من الوحدة النمطية ويصدره إلى ملف JSON ، ويمكننا التحقق من ذلك في ./test/target/ مجلد في مشروعك. ب

إلى الآن ، ستجد لقطة شاشة توضح كيفية قيام الوحدة بتصدير ملفات JSON:

كيفية تحويل بيانات PDF إلى ذكاء بيانات JSON PlatoBlockchain. البحث العمودي. عاي.
تصدير JSON

للتحليل من خلال ملفات PDF في الجداول ، قد لا تعمل هذه المكتبات!


سيتعين عليك الاستفادة من خوارزميات OCR & Machine Learning لاستخراج البيانات المجدولة إلى JSON. تقوم Nanonets بذلك تمامًا كما ترى أدناه:

كيفية تحويل بيانات PDF إلى ذكاء بيانات JSON PlatoBlockchain. البحث العمودي. عاي.
شبكات النانو تقوم بتحويل البيانات من PDF إلى JSON 


تحويل البيانات المخصصة من PDF إلى JSON

في بعض الأحيان ، أثناء استخراج البيانات من مستندات الأعمال ، قد نطلب التخصيص. على سبيل المثال ، لنفترض أنه إذا كنا نريد صفحات أو جداول معينة فقط ، فلا يمكننا القيام بذلك بشكل مباشر. في هذه الحالة ، قد نحتاج إلى توفير قواعد إضافية للمحللين ، الأمر الذي يستغرق وقتًا طويلاً مرة أخرى. لكن دعنا نرى كيف يمكننا القيام بالتخصيص والإجراءات التي يحتاجها معظم الناس.

فيما يلي بعض الإجراءات المطلوبة للتخصيص في تحويل PDF إلى JSON:

  • استخراج نص أو صفحات معينة فقط من ملفات PDF
  • استخرج جميع الجداول من مستندات PDF
  • استخراج أعمدة معينة من جداول معينة في ملفات PDF
  • قم بتصفية النص من ملفات PDF قبل تصديرها إلى JSON
  • إنشاء JSON متداخلة بناءً على البيانات المستخرجة من ملفات PDF
  • تنسيق بنية JSON بناءً على البيانات
  • إنشاء وحذف وتحديث قيم بعض الحقول في JSON بعد الاستخراج

هذه بعض الإجراءات التي غالبًا ما تكون مطلوبة لتخزين بياناتنا بطرق مختلفة ، أو تخبرنا عما إذا كنا نبني واجهات برمجة التطبيقات لتطبيق ما. دعونا نرى كيف يمكننا تحقيق ذلك.

استخراج نص معين: في ملفات PDF ، يمكننا استخراج نص معين باستخدام التعبيرات النمطية ؛ على سبيل المثال ، إذا كنا نريد جميع رسائل البريد الإلكتروني وأرقام الهواتف باستخدام regex ، فيمكننا انتقاءها. إذا كانت ملفات PDF بتنسيق ممسوح ضوئيًا ، فنحن بحاجة إما إلى تدريبهم على خوارزمية التعلم العميق التي يمكنها فهم تخطيطات ملفات PDF واستخراج الحقول استنادًا إلى الإحداثيات والتعليقات التوضيحية التي تم إجراؤها على بيانات التدريب. يعد LayoutML أحد أكثر المستودعات مفتوحة المصدر شيوعًا لفهم تخطيطات المستندات واستخراج النص ، وهو يتدرب على نماذج BERT لاستخراج نص مخصص. ومع ذلك ، يجب أن يكون لدينا بيانات كافية لتحقيق دقة أعلى في استخراج النص.

تخصيص الجدول: كما تمت مناقشته ، يمكن استخراج الجداول باستخدام مكتبات مثل Camelot و Tabula-py أو باستخدام OCR والخوارزميات القائمة على التعلم العميق. لكن من أجل التخصيص ، سيتعين علينا استخدام مكتبات مثل الباندا ؛ سيتيح لنا ذلك إنشاء البيانات من الجداول وتحديثها وتسلسلها. يستخدم نوع بيانات مخصص يسمى إطار البيانات ، والذي يستخدم على نطاق واسع لمعالجة بيانات الجدول وتخصيصها. تشمل المزايا الأخرى لاستخدام الباندا كتابة وظائف مخصصة يمكنها إجراء عمليات حسابية معينة أثناء عملية الاستخراج.

تنسيق بيانات JSON: بعد تصدير ملفات PDF إلى JSON ، يعد تنسيقها مهمة مباشرة ، نظرًا لأن لدينا نوع بيانات أكثر قابلية للتخصيص وهو أزواج القيمة الرئيسية. يمكننا إما تطوير نصوص بسيطة أو استخدام أدوات عبر الإنترنت للبحث من خلال أزواج القيمة الرئيسية هذه وتنسيقها. تتضمن بعض المعلمات الأكثر شيوعًا للتنسيق المسافة البادئة والفواصل ومفاتيح الفرز والفحوصات الدائرية وفحوصات البيانات. إذا تم استخدام JSON كواجهة برمجة تطبيقات ، فيمكننا استخدام Postman أو أي ملحقات متصفح لتنسيق البيانات والتفاعل مع واجهات برمجة التطبيقات.


هل تريد استخراج المعلومات من مستندات PDF وتحويلها إلى تنسيق JSON؟ تحقق من Nanonets لأتمتة تصدير أي معلومات من أي مستند PDF إلى JSON.


الطابع الزمني:

اكثر من الذكاء الاصطناعي والتعلم الآلي