يساعدك هذا البرنامج النصي على استخراج قائمة عناوين URL للكتب من موقع Projekt Gutenberg، وتصفية عناوين URL غير المرغوب فيها، وتنزيل ملفات EPUB المقابلة باستخدام خدمة epub2go.
اشتكى أحد أصدقائي من قيام شركة Projekt Gutenberg بإخفاء ملفات ePub الخاصة بالكتب التي قامت برقمنتها في متجرها خلف نظام حظر الاشتراك غير المدفوع. لقد أراد الحصول على جميع الكتب بتنسيق ePub، وقررت تحقيق ذلك، نظرًا لأن الكتب متاحة بسهولة بتنسيق HTML بالفعل. وبعد إجراء بعض الأبحاث، عثرت على خدمة epub2go، التي جعلت من السهل تحويل الكتب من HTML إلى ePub دون الحاجة إلى التبعيات والحسابات المحلية.
يقوم هذا البرنامج النصي بأتمتة عملية تنزيل الكتب من Projekt Gutenberg، وتحويلها إلى تنسيق ePub باستخدام خدمة epub2go، وتخزين الملفات المحولة على جهازك المحلي*.
(* هذا حاليًا قبيح جدًا لأنه يلقيهم جميعًا في دليل عمل البرنامج النصي)
كشط عناوين URL للكتاب من Projekt Gutenberg
تصفية عناوين URL غير المرغوب فيها (التي ليست كتبًا)
تنزيل ملفات ePub المحولة باستخدام خدمة epub2go
يضيف تأخيرًا بين الطلبات لتجنب التحميل الزائد على الخدمة
اتبع هذه الخطوات لإعداد البرنامج النصي وتشغيله:
قم بتنزيل أحدث إصدار من ChromeDriver for Selenium الذي يتوافق مع إصدار Chrome/Chromium المثبت لديك. ضع الملف الثنائي في الموقع الذي تريده وقم بتحديث المسار في الكود.
قم بتنزيل وتفريغ أحدث إصدار من متصفح Google Chrome أو Chromium للتنفيذ بدون استخدام الرأس لجافا سكريبت من جانب العميل.
قم بتثبيت تبعيات Python المطلوبة باستخدام النقطة:
تثبيت النقطة -r متطلبات.txt
تأخير شكلي بين التنزيلات والتحويلات
توازي التنزيلات لزيادة سرعة التنزيل (مع حد معقول لضمان عدم التحميل الزائد على epub2go)
استخرج أسماء المؤلفين الكاملة وعناوين الكتب مقدمًا، ثم أنشئ بنية دليل استنادًا إلى books/author/book_title
، ثم ضع ملفات ePub هناك