Tôi muốn tạo ảnh chụp màn hình của một trang bằng Chrome Headless và chúng tôi đã thấy cả công tắc --screenshot
và công --virtual-time-budget
tắc để chụp ảnh màn hình và giới hạn thời gian chờ của trình duyệt.
Tôi có các yếu tố trên trang tuy nhiên phải chờ DOMContentLoaded kết xuất và chúng tôi cũng muốn nắm bắt các yếu tố đó.
Tôi đang tìm cách chụp ảnh màn hình, giả sử, 5 giây sau khi trang được tải, thay vì đúng khi nó được xem là đã tải.
Chúng tôi đang gọi Chrome Headless từ ứng dụng NodeJS của chúng tôi như vậy:
cp.spawnSync("google-chrome-beta", ["--headless", "--disable-gpu", "--screenshot", "--profile-directory=Default", "--window-size=1920,6200", "--virtual-time-budget=25000", url]);
Chúng tôi biết rằng có những thư viện npm có thể đạt được điều này bằng cách sử dụng API từ nút, thay vì sử dụng các công tắc dòng lệnh, nhưng chúng tôi lo ngại về tính ổn định (nhóm Chrome thích thường xuyên phá vỡ tất cả các API nội bộ của họ).
TL; DR
Có cách nào để khiến Chrome Headless đợi vài giây sau khi tải trang trước khi chụp ảnh màn hình không?
nodejs index.js --url="http://www.eff.org" --delay=5000
chậm 5 giây.