คำถาม
ได้รับคำถามว่า puppeteer กับ puppeteer-core มันต่างกันอย่างไร ?
เราควรใช้อะไรดี ?
คำตอบ ผมก็ไม่รู้ ปกติใช้แต่ puppeteer !!
ถ้าใครใช้ puppeteer ตั้งแต่ version แรก ๆ จนมาถึง 1.6.x นั้น
พบว่าทุกครั้งที่ใช้งาน จะทำการ download ทั้ง library และ Chromium ลงมาด้วย
ซึ่งมีขนาดใหญ่มาก ๆ
เป้าหมายเพื่อทำการควบคุมการทำงานของ browser ผ่าน DevTools Protocol
และทำงานแบบ Headless คือ
ไม่ทำการเปิดหน้า UI ของ browser ขึ้นมากวนใจ หรือ ขัดจังหวะการทำงาน
ดังนั้นตั้งแต่ใน puppeteer 1.7 ขึ้นมา
จึงทำการแยก puppeteer-core ออกมา เพื่อไม่ต้อง download พวก Chromium ลงมา
ทำให้มีเฉพาะ library ที่จำเป็นเท่านั้น
และไปใช้งาน browser ที่ทำการติดตั้งไว้แล้ว
ไม่ว่าจะเป็น Google Chrome หรือพวก Microsoft Edge เป็นต้น
การใช้งานก็เพียงติดตั้ง puppeteer-core แล้วใช้งานเลย
และเขียน code ดังนี้
Reference Website