Puppeteer là gì

Puppeteer is a Node library which provides a high-cấp độ API to lớn control headless Chrome or Chromium over the DevTools Protocol. It can also be configured to lớn use full (non-headless) Chrome or Chromium.

Bạn đang xem: Puppeteer là gì

Tạm dịch là:

Puppeteer là một trong thư viện của Node cung ứng API cấp cao để điều hành và kiểm soát Chrome hoặc Chromium áp dụng giao thức DevTools. Puppeteer mang định chạy headless, nhưng có thể được định cấu hình nhằm chạy non-headless.

Mình đang giải thích một chút: Theo bản thân hiểu, run headless là bài toán bạn chạy browser mà lại không có bối cảnh. Việc chạy browser những điều đó hay nhằm crawl dữ liệu, chụp ảnh màn hình,... chđọng không hẳn nhằm chú ý web.

Một số bài toán hơi hay ho nhưng bạn cũng có thể có tác dụng với Pupperteer là:

Chụp hình ảnh màn hình hoặc xuất tệp tin pdf của những trang.Crawl một SPA (Single-Page Application) cùng xuất ra câu chữ pre-rendered (ví như "SSR" (Server-Side Rendering)).Tự rượu cồn gửi form, kiểm tra hình ảnh với nhập tài liệu từ bỏ keyboard,...Tạo môi trường xung quanh testing tự động cập nhật. Chạy bạn dạng thể nghiệm vào Chorme với những tuấn kiệt mới nhất và phiên bản javascript mới nhất.Ghi lại timeline trace mang đến trang web của chúng ta góp phạt hiện tại mau chóng các sự việc về hiệu năng.Test Chorme Extensions.

Xem thêm: Dấu Hôn Hickey Là J - Cách Tạo Hickey Và Xóa Hickey Như Nào

Trong nội dung bài viết này, bản thân sẽ cùng các bạn test sử dụng puppeteer nhằm chụp ảnh screen hoặc xuất tệp tin pdf nhé

*

3.2 Thử xuất một file pdf nha

const puppeteer = require("puppeteer");(async () => const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.goto("https://michael-shanks.com", waitUntil: "networkidle2"); await page.pdf( path: "michael-shanks.com.pdf", format: "A4", printBackground: true, ); await browser.close();)();Kết quả:

*

3.3 Chụp trang thưởng thức authenticate

Nếu các bạn chụp một trang yêu cầu singin thì sẽ cố làm sao thất thoát.

Ví dụ: Ở dây, bạn thích chụp màn hình hiển thị trang viết bài của trang michael-shanks.com.

Xem thêm: Cách Làm Món Gà Kho Gừng Ngon, 3 Cách Làm Gà Kho Gừng Nghệ Nhẹ Nhàng

const puppeteer = require("puppeteer");(async () => const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.goto("https://michael-shanks.com/publish/post", waitUntil: "networkidle2"); await page.screenshot( path: "michael-shanks.com-authenticate.png") await browser.close();)();Kết quả:

*

Như trong ngôi trường hòa hợp này, họ sẽ chụp được trang đăng nhập. Vì Lúc brower run với truy vấn cho tới trang viết bài bác thì router được điều phối sang trang đăng nhập do trang mà lại họ mong muốn truy cập tận hưởng authenticate.

Cách cách xử lý là họ vẫn bắt buộc xét cookie trước lúc truy cập website kia. Thử lại đợt tiếp nhữa nào:

const puppeteer = require("puppeteer");(async () => const cookie = name: "michael-shanks.com_auth", value: "", // replace this! domain: "michael-shanks.com", url: "https://michael-shanks.com", path: "/", httpOnly: true, secure: true, ; const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.setCookie(cookie); await page.goto("https://michael-shanks.com/publish/post", waitUntil: "networkidle2"); await page.screenshot( path: "michael-shanks.com-authenticate.png") await browser.close();)()Kết quả bạn nhận được đã nlỗi vầy nè


Chuyên mục: ĐỊNH NGHĨA