Puppeteer: تدقيق الأمثلة

تم إنشاؤها على ٢ أغسطس ٢٠١٧  ·  3تعليقات  ·  مصدر: puppeteer/puppeteer

  • [x] إضافة مثال لحفظ ملف PDF
  • [x] إضافة مثال: انتقل إلى google ، أدخل استعلام البحث ، انقر فوق زر الإرسال

    • ربما تفعل شيئا مع النتائج؟

    • إضافة ل Pavel

  • [x] لقطة شاشة

    • حفظ لقطة الشاشة على القرص. فعله.

    • الحصول على لقطة شاشة كاملة وحفظها

    • الحصول على وحفظ لقطة شاشة iphone مقلدة

  • [x] loadurlwithoutcss

    • تحديث بحيث يعمل.

  • [x] غير عشوائي

    • ماذا يفعل هذا المثال في الواقع؟ حذف؟

  • [] رد الصفحة

    • يحتاج إلى تعليقات لشرح ما يفعله المثال بالفعل.

  • [x] يكتشف niff

    • على الأقل يجب أن يتم تعيين المهلة المحددة عبر انتظار.

    • سيكون من الجيد استخدام وكيل بدلاً من تحديد Getter ، لكن هذه أولوية أقل

    • أود أن أوصي بإعلان دالة لتمريرها إلى formatOnNewDocument. نحن نستخدم هذه الاتفاقية في المنارة لتوضيح أنها وظيفة صفحة. (colorWheel يفعل هذا بالفعل :)

  • [x] انتظر على سبيل المثال

التعليق الأكثر فائدة

فعلى سبيل المثال، ينبغي أن نبدأ تشغيلها من خلال اللنت وتنظيف رمز قليلا حتى انهم ثابت ويستخدم ES6. على سبيل المثال ، استخدم const/let و func عالي المستوى غير متزامن لإزالة مزيج .then() وغير متزامن / انتظار. أعتقد أن رؤية هذا أقل شيوعًا.

على سبيل المثال ، هذا:

var browser = new Browser({headless: false});
browser.newPage().then(async page => {
    page.setRequestInterceptor(request => {
        if (request.url.endsWith('.css'))
            request.abort();
        else
            request.continue();
    });
    var success = await page.navigate(address);
    if (!success)
        console.log('Unable to load the address!');
    browser.close();

ربما إلى شيء مثل هذا:

(async () => {

const browser = new Browser({headless: false});
const page = await browser.newPage();
page.setRequestInterceptor(request => {
  request.url.endsWith('.css') ?  request.abort() : request.continue();
});

const success = await page.navigate(address);
if (!success) {
  console.log('Unable to load the address!');
}
browser.close();

})();

ال 3 كومينتر

فعلى سبيل المثال، ينبغي أن نبدأ تشغيلها من خلال اللنت وتنظيف رمز قليلا حتى انهم ثابت ويستخدم ES6. على سبيل المثال ، استخدم const/let و func عالي المستوى غير متزامن لإزالة مزيج .then() وغير متزامن / انتظار. أعتقد أن رؤية هذا أقل شيوعًا.

على سبيل المثال ، هذا:

var browser = new Browser({headless: false});
browser.newPage().then(async page => {
    page.setRequestInterceptor(request => {
        if (request.url.endsWith('.css'))
            request.abort();
        else
            request.continue();
    });
    var success = await page.navigate(address);
    if (!success)
        console.log('Unable to load the address!');
    browser.close();

ربما إلى شيء مثل هذا:

(async () => {

const browser = new Browser({headless: false});
const page = await browser.newPage();
page.setRequestInterceptor(request => {
  request.url.endsWith('.css') ?  request.abort() : request.continue();
});

const success = await page.navigate(address);
if (!success) {
  console.log('Unable to load the address!');
}
browser.close();

})();

هل نريد الاحتفاظ بالأمثلة الوهمية؟ يشعرون بأنهم خارج المكان.

لا يمكنني الخروج بمثال بسيط لكنه توضيحي لـ page.addBinding (رد اتصال inPage سابقًا).

ومع ذلك ، يحتوي التوثيق على بعض الأمثلة التي قد تكون جيدة بما فيه الكفاية.
إغلاق هذا الآن.

ملاحظة: لا تتردد في استخدام العلاقات العامة على سبيل المثال مع page.addBinding / مشاركة فكرة لها إن وجدت!

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

bricss picture bricss  ·  3تعليقات

aslushnikov picture aslushnikov  ·  3تعليقات

barnash picture barnash  ·  3تعليقات

sradu picture sradu  ·  3تعليقات

ebidel picture ebidel  ·  3تعليقات