يمكن للحزمة تحويل صفحة ويب إلى صورة أو pdf. تتم عملية التحويل خلف الكواليس بواسطة محرك الدمى Puppeteer الذي يتحكم في إصدار بدون رأس من Google Chrome.
إليك مثال سريع:
استخدم SpatieBrowsershotBrowsershot;// سيتم حفظ الصورةBrowsershot::url('https://example.com')->save($pathToImage);
سيتم حفظ ملف pdf إذا كان المسار الذي تم تمريره إلى طريقة save
له امتداد pdf
.
// سيتم حفظ ملف pdfBrowsershot::url('https://example.com')->save('example.pdf');
يمكنك أيضًا استخدام مدخلات html عشوائية، ما عليك سوى استبدال التابع url
بـ html
:
Browsershot::html('<h1>مرحبا بالعالم!!</h1>')->save('example.pdf');
إذا كان إدخال HTML الخاص بك موجودًا بالفعل في ملف محليًا، فاستخدم ما يلي:
Browsershot::htmlFromFilePath('/local/path/to/file.html')->save('example.pdf');
بإمكان Browsershot أيضًا الحصول على نص صفحة html بعد تنفيذ JavaScript:
Browsershot::url('https://example.com')->bodyHtml(); // إرجاع HTML للجسم
إذا كنت ترغب في استرداد قائمة مصفوفة تحتوي على جميع الطلبات التي أطلقتها الصفحة، فيمكنك القيام بذلك:
طلبات $ = Browsershot::url('https://example.com') ->triggeredRequests();foreach ($requests as $request) {$url = $request['url']; //https://example.com/
لاستخدام وضع مقطوعة الرأس الجديد في Chrome، قم بتمرير طريقة newHeadless
:
Browsershot::url('https://example.com')->newHeadless()->save($pathToImage);
تعرف على كيفية إنشاء حزمة مثل هذه من خلال مشاهدة دورة الفيديو المميزة لدينا:
نحن نستثمر الكثير من الموارد في إنشاء أفضل الحزم مفتوحة المصدر في فئتها. يمكنك دعمنا عن طريق شراء أحد منتجاتنا المدفوعة.
نحن نقدر بشدة إرسالك لنا بطاقة بريدية من مسقط رأسك، مع ذكر الحزمة (الحزم) التي تستخدمها. ستجد عنواننا على صفحة الاتصال لدينا. ننشر جميع البطاقات البريدية المستلمة على جدار البطاقات البريدية الافتراضية لدينا.
جميع الوثائق متاحة على موقع الوثائق لدينا.
لتشغيل مجموعة الاختبار، ستحتاج إلى تثبيت Puppeteer. يرجى الرجوع إلى متطلبات Browsershot هنا. عادةً ما يقوم npm -gi puppeteer
بالمهمة.
بالإضافة إلى ذلك، ستحتاج إلى pdftotext
CLI الذي يعد جزءًا من حزمة poppler-utils. يمكن العثور على مزيد من المعلومات في الملف التمهيدي spatie/pdf-to-text. عادةً brew install poppler-utils
كافيًا.
أخيرًا قم بإجراء الاختبارات باستخدام:
اختبار الملحن
يرجى الاطلاع على المساهمة للحصول على التفاصيل.
إذا وجدت خطأً يتعلق بالأمان، فيرجى إرسال بريد إلكتروني إلى العنوان [email protected] بدلاً من استخدام أداة تعقب المشكلات.
إذا لم تتمكن من تثبيت Node وPuppeteer، فقم بإلقاء نظرة على الإصدار الثاني من لقطة المتصفح، والذي يستخدم Chrome بدون رأس CLI لالتقاط لقطة شاشة. لم يتم الحفاظ على v2
بعد الآن، ولكن من المفترض أن يعمل بشكل جيد.
إذا لم ينجح استخدام Chrome بدون رأس، فقم بإلقاء نظرة على v1
من هذه الحزمة والذي يستخدم ثنائي PhantomJS
المهجور.
فريك فان دير هيرتن
جميع المساهمين
وشكر خاص لشركة Caneco على الشعار
رخصة معهد ماساتشوستس للتكنولوجيا (MIT). يرجى الاطلاع على ملف الترخيص لمزيد من المعلومات.