Use a browser automation script to set the page URL and viewport dimensions, capture the screenshot, and save it with a predictable name. Then schedule that script to run on a recurring basis. This guide uses Playwright for capture and GitHub Actions for scheduling and artifact storage; the browser script controls what gets captured, while the workflow controls when it runs.
Choose what each screenshot should show
Before automating captures, decide what the image is for. A screenshot can show only the currently visible viewport, the full scrollable page, or one selected element. These are different outputs: a full-page image is useful for a page archive, while a viewport capture is better for checking a responsive layout at a particular screen size. Playwright documents these screenshot options in its screenshot guide.
As an Amazon Associate I earn from qualifying purchases.
- Viewport: Captures the visible area at the chosen width and height.
- Full page: Captures the page beyond the initial viewport, including content lower down the document.
- Element: Captures a specific element, such as a chart or product panel.
Also decide whether you want an archive for human review or visual regression testing. An archive preserves dated images; regression testing compares new captures with a baseline to flag visual changes.
Set viewport sizes or emulate devices
For breakpoint-oriented responsive checks, set explicit viewport width and height. That makes the intended dimensions clear and reproducible; for example, you might capture the same URL at 1440 × 900, 768 × 1024, and 390 × 844 CSS pixels. These are example dimensions, not required standards.
#1 Best Overall
- 20PCS Premium CRV Bits: Our mini screwdriver set includes 20 high-hardness, rust-resistant CRV bits, covering 5 common bit types and featuring a variety of sizes. This versatile set is an essential household tool for daily maintenance, DIY projects, and electronics repair
- Strong Magnetic Design: The handle’s internal magnetic design holds bits firmly in place, while the magnetic bits make it easy to pick up and hold small screws. Say goodbye to the hassle of screws falling into crevices or tight corners—work faster and more efficiently
- Non-Slip Handle with 360° Rotating Cap: The ergonomic handle provides a secure, sweat-resistant grip to prevent slipping during precision repairs. Combined with the 360° rotating cap, it allows for smooth one-handed operation, great for delicate tasks
- Practical & Complete Accessories: The magnetic driver bit set also includes a pry bar, triangle pry tool, and SIM card eject pin. This complete set of accessories makes it easy to pry open cases, lift screens, and remove SIM cards
- Compact & Wide Application: Comes in a travel-friendly case, no more lost bits! This portable repair tool kit is ideal for repairing phones, laptops, PCs, game consoles, and other electronics. Also suitable for eyeglasses, jewelry, and everyday household items
Use a Playwright device descriptor when you need more than a viewport size. Device descriptors can include settings such as user agent and touch behavior as well as dimensions. A width-and-height capture tests how a layout responds to those dimensions; it does not, by itself, reproduce every characteristic of a physical device. See Playwright’s emulation documentation.
Build a Playwright capture script
The following Node.js example captures one URL at three viewport sizes. It waits for a page-specific heading to appear instead of relying on an arbitrary fixed sleep, then saves consistently named PNG files with the run date. Change the URL and selector to match the page being monitored.
- Install a current Node.js release and create a project directory.
- In that directory, run
npm init -y. - Install Playwright with
npm install --save-dev playwright, then install its Chromium browser withnpx playwright install chromium. - Save the script below as
capture.mjs. - Run it with
node capture.mjs. The images will appear in thescreenshotsdirectory.
import { chromium } from 'playwright';
import { mkdir } from 'node:fs/promises';
const url = process.env.TARGET_URL ?? 'https://example.com';
const readySelector = process.env.READY_SELECTOR ?? 'h1';
const sizes = [
{ name: 'desktop', width: 1440, height: 900 },
{ name: 'tablet', width: 768, height: 1024 },
{ name: 'mobile', width: 390, height: 844 },
];
const runDate = new Date().toISOString().slice(0, 10);
await mkdir('screenshots', { recursive: true });
const browser = await chromium.launch({ headless: true });
try {
for (const size of sizes) {
const page = await browser.newPage({
viewport: { width: size.width, height: size.height },
});
await page.goto(url, { waitUntil: 'domcontentloaded', timeout: 60000 });
await page.locator(readySelector).waitFor({ state: 'visible', timeout: 30000 });
await page.screenshot({
path: `screenshots/${runDate}-${size.name}.png`,
fullPage: false,
});
await page.close();
}
} finally {
await browser.close();
}
The script uses one browser context per viewport by creating a new page with the desired viewport. If the site needs authentication or a particular page state, add the required setup before taking the screenshot. For a full-page image, set fullPage: true. For an element-specific capture, locate the element and call screenshot on that locator, as described in the Playwright screenshot documentation.
Wait for the right page state
domcontentloaded indicates that the initial HTML has been parsed, not that every image, API response, animation, or client-side update is finished. The example then waits for a visible heading as a basic page-specific readiness check. Replace h1 with a selector that represents the content you actually need. If the content appears only after an interaction or a known API response, add that interaction or wait condition before capturing. A fixed delay can help with known timing behavior, but it is not universally reliable across pages.
Rank #2
- 【MINI PC With Built-In Fan】The HIGOLE MINI PC equipped with a built-in fan【UPGRADE 1】, ensures optimal temperature control, enhancing both performance and stability. Users can enjoy a seamless experience without experiencing any lag or system crashes caused by overheating. Additionally, the integrated fan effectively reduces noise levels, prolongs the lifespan of the MINI PC, and provides a worry-free and comfortable user experience.
- 【MINI PC FULL-FEATURED TYPE-C】The HIGOLE MINI PC, featuring a convenient and versatile Full Functionality TYPE-C port【UPGRADE 2】, allows for effortless connectivity and compatibility with a wide range of devices. Users can easily transfer data, connect peripherals, and even charge their devices, including power banks. This versatility enhances convenience and flexibility in usage, resulting in increased productivity and seamless integration within the digital ecosystem.
- 【MINI PC WITH Touch Screen&2500 mAh battery】The HIGOLE MINI PC can be used for touch screen business office, leisure and entertainment,easy use . HIGOLE MINI PC can also be used to remotely control other micro PCs or smart home systems using remote desktop protocol.This mini computer is equipped with a 2500mAh battery, allowing you to use it anytime and anywhere for extended work and video watching.
- 【MINI Computer Win 11】Micro PC with latest Win 11 Pro and a valid license, which is support to remote desktop access, supports Win 11 pro upgrade. supports Win 10, Support IOT building,Ideal for developers and programmers running dual custom OS. 【Extra large memory 】8GB DDR4,128GB Upgrade 256GB Emmc【UPGRADE 3】.
- 【Celeron N5095 CPU】This small mini PC, features the Faster Celeron N5095 processor【UPGRADE 4】,J4125 Upgrade N5095 with CPU/GPU throttling. It's a competent quad-core that does a decent job for lightweight tasks, with a base operating frequency of 2.0 GHz/s to 2.9GHz (4MB cache). Drawing under 10 watts of power.Its metal body helps to expel heat quickly and the device is completely silent, improving efficiency.With the latest wireless connectivity.The tiny PC with WiFi 5.0,dual-band WiFi2.4G/5.0G,it provides speeds up to 450Mbps/2.4GHz and 1000Mbps/5GHz. Gigabit Ethernet supports 10/100/1000Mbps,Bluetooth 4.2 fast data transfer speed up to 2Mbps.
Name files for comparison
The sample includes the date and viewport label in each filename, such as 2026-10-03-mobile.png. If the workflow may run more than once per day, include a timestamp or unique run identifier so a later capture does not overwrite an earlier one. Keep the viewport labels and dimensions stable if you intend to compare images over time.
Schedule the script with GitHub Actions
GitHub Actions provides scheduled workflow triggers; it starts the capture script on a recurring schedule, while Playwright performs the browser work. The example below runs daily at 08:00 UTC, installs the dependencies and Chromium, runs the script, and uploads the resulting images as a workflow artifact. GitHub’s schedule syntax and behavior are documented in its workflow events reference.
Add the file below as .github/workflows/website-screenshots.yml. Replace https://example.com with the site to capture. Set the TARGET_URL and READY_SELECTOR repository variables in GitHub if you prefer not to put those values in the workflow file.
name: Scheduled website screenshots
on:
schedule:
- cron: '0 8 * * *'
workflow_dispatch:
jobs:
capture:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 22
- name: Install dependencies
run: npm ci
- name: Install Chromium
run: npx playwright install --with-deps chromium
- name: Capture screenshots
env:
TARGET_URL: https://example.com
READY_SELECTOR: h1
run: node capture.mjs
- name: Upload screenshots
uses: actions/upload-artifact@v4
with:
name: website-screenshots
path: screenshots/
retention-days: 14
The schedule uses UTC, so convert the time to UTC if you want it to align with a local time zone that observes daylight-saving changes. You can also start a run manually from the workflow’s Actions page because the file includes workflow_dispatch. The artifact remains available according to its configured retention period; change retention-days to suit the history you need. Playwright’s CI guide describes artifact handling and retention configuration.
Rank #3
- 【One Compact PC, Multiple Applications】Pre-installed with Windows 11 Pro and Linux-ready for flexible system deployment. Built-in Wi-Fi 5, Bluetooth 5.0, and a G-Sensor support convenient wireless connectivity and automatic screen rotation. The responsive touchscreen is ideal for remote meetings, smart-home control, self-service kiosks, industrial HMI, and inventory management. Designed for everyday and light-duty applications, it is best suited for essential tasks rather than heavy multitasking, gaming, or video rendering
- 【Portable Power for Work Anywhere】Stay productive without being tied to a power outlet. The built-in 2500mAh rechargeable battery provides up to 4.5 hours of runtime, while the lightweight 0.32 kg design makes it easy to carry wherever you go. From home and office use to field debugging, equipment inspections, and on-site tasks, enjoy the freedom to work wherever you need
- 【Touchscreen Mini PC, No Monitor Required】Enjoy a complete computing experience without the need for a separate display. This compact 5.5-inch IPS touchscreen mini PC features a 720×1280 resolution, Intel Celeron processor, 16GB RAM 256GB eMMC storage, and Windows 11 Pro. Ideal for everyday tasks like web browsing, document editing, and media playback, while also fitting seamlessly into digital signage, kiosks, POS systems, and light-duty industrial applications
- 【Dual-Display Support & Extensive Connectivity】Expand your workspace with dual-display output through HDMI up to 4K@30Hz and Type-C video output. A full selection of ports—including Gigabit Ethernet, four USB 3.0 ports, a TF card slot, and a PD charging port—makes it easy to connect keyboards, external storage, network devices, and other peripherals. Whether you're creating a compact home workstation, setting up a POS system, or integrating it into an industrial control environment, this mini PC provides the connectivity you need
- 【Intel Celeron N5095 Processor with Quiet Cooling】Powered by a quad-core Intel Celeron N5095 processor with speeds up to 2.9GHz and 4MB cache, this compact mini PC delivers smooth and reliable performance for everyday computing. The built-in quiet cooling fan helps dissipate heat efficiently during extended use while keeping operating noise to a minimum
Keep captures comparable and useful
For visual comparisons, consistency matters as much as the viewport values. Playwright notes that browser rendering can vary with the host operating system, browser version, settings, hardware, power source, headless mode, and other factors. Its visual comparison documentation explains baseline generation and techniques for dealing with dynamic page regions.
- Keep the browser engine, version, operating system, and screenshot settings consistent where possible.
- Use the same viewport dimensions and page readiness condition for every run.
- Account for changing content such as dates, rotating promotions, personalized recommendations, or live data before treating a pixel difference as a regression.
- Choose artifact retention deliberately. Workflow artifacts suit a bounded history; teams needing longer-term storage, review, or alerts may need a separate storage or monitoring system.
The workflow shown here stores captures; it does not automatically decide whether a visual difference is acceptable. For baseline comparisons, use a visual regression workflow and define how unstable regions should be handled.
Troubleshoot common capture failures
The workflow succeeds but no image is uploaded
Check the Actions log for the capture step and confirm that the script writes to screenshots/, the same path given to the artifact upload step. A failed script prevents later steps from producing the expected output; review the error before changing the artifact settings.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →The page times out waiting for a selector
The default h1 may not exist, may be hidden, or may appear only after a different page action. Set READY_SELECTOR to a visible element that reliably indicates the target content is ready. Also check whether the target URL redirects or requires authentication.
Rank #4
- Parameters: This is a new type of mini computer chassis screen. There is no need to install AIDA64, and only a USB cable is required to detect whether the running parameters are normal. Display area: 49X74 (mm), overall size: 55X85 (mm), resolution: 320X480, thickness: 7~ 8 (mm), viewing angle: IPS full viewing angle, interface: USB-TYPEC, shell material: metal
- FAQ: Unable to download URL and unzip, use tutorial, what system is supported? Please don't worry, we will upload video tutorial in the link, which will be reflected in the video. At the same time, we will have product instructions. Finally, our products are compatible and easy to operate
- Features: Support horizontal and vertical screen switching, 0°and 180°two options, energy saving and environmental protection, automatic screen off after shutdown, eye comfort, stepless brightness adjustment
- Function: Displays various data of CPU, memory, hard disk and other hardware, so that users can grasp the computer operation status in time. Through special customized chips, it supports dynamic wallpaper and other forms, can add visual effects, and only takes up a small amount of CPU resources. Compared with the traditional HDMI secondary screen, it only needs a USB data cable to connect, avoiding various problems such as cable clutter
- Packing list: 1 x 3.5-inch screen; 1 x USB data cable; 1 x adjustable bracket; 1 x product manual; 1x Acrylic double-sided tape;1 x packaging box. If you encounter the above problems or other problems about the product, the information we provide cannot solve them for you. Please contact us. We are online 24 hours a day and will serve you as soon as possible.
The screenshot shows an incomplete page
Waiting for domcontentloaded does not ensure that every dynamic element has rendered. Wait for a relevant content selector or page-specific condition. If a page loads content only after scrolling, add deliberate scrolling before capture; full-page capture alone should not be treated as a guarantee that every lazy-loaded asset has loaded.
Images differ even though the site did not change
Check whether the browser or runner environment changed, and whether the page contains dynamic content. Keep the runtime stable where practical, and exclude or stabilize expected-to-change regions when using baseline comparisons. Playwright’s visual comparisons guide covers sources of rendering variation and screenshot comparison controls.
A scheduled run does not happen at the expected local time
GitHub Actions cron schedules use UTC. Convert the desired local time to UTC and account for seasonal clock changes if the schedule should follow local time. Check the workflow event reference for current scheduling details: GitHub Actions events.
Or skip the browser setup
If you want a screenshot API rather than maintaining a browser runner, ScreenshotNeo is a website screenshot API and MCP server. Its API can return a screenshot in PNG, JPEG, or WebP, or a PDF; use a scheduler you control to repeat the request at your chosen viewports. For example, this cURL call captures a page at a 390 × 844 viewport:
Best Value
- 【12th Gen Alder Lake-N95 & Fan design】The HIGOLEPC Mini PC equipped with the powerful 12th Gen Alder Lake-N95 processor. Featuring 4 cores and 4 threads, with speeds of up to 3.4GHz, this micro PC delivers a 30% performance boost compared to its predecessors, the celeron N5095 and N5105. The design of the cooling fan helps this computer dissipate heat and maintain a stable state..With a low TDP of just 8W, it achieves robust performance at an exceptionally low power consumption.
- 【High-Speed Performance & Expandable Storage&4G data transmission】Enjoy faster computing with 16GB of DDR4 RAM and 256GB of storage,Ideal for home working, business offices, IOT, school education, and billboards. Expand storage effortlessly with a Micro SD card slot (up to 512GB).Supporting the use of 4G for data transfer. Please note, this 4G data transmission functionality does not support calling features.
- 【Triple Video Display & Full-featured TYPE-C】Maximize your visual experience with Triple Video display supported by the ultra HD graphics card (4K@60Hz). One HDMI ports and a full-function USB-C allow simultaneous dual display, enhancing your work efficiency. The USB-C PD 3.1 port supports 4K display, data transfer, and power input, reducing cord clutter and optimizing your workspace.
- 【Wi-Fi 5 & Bluetooth 5.0 & Dual 2.5G Ethernet network】 HIGOLEPC mini PC incorporates advanced Wi-Fi 5 and Bluetooth 5.0 technologies, ensuring reliable dual-band connectivity (2.4GHz and 5GHz). With dual 2.5G ethernet network,You can manually install firmware for this mini PC to use it as a NAS,software router,home server or network firewall with very powerful features.Enjoy the convenience of a portable desktop PC anytime, anywhere, with swift connectivity and adaptable charging options.
- 【Pre-installed OS System & Large capacity battery 】 This mini PC comes with the latest Win11 Pro system and also supports other types of systems such as Debian, Ubuntu, and Linux. All these systems have undergone stable testing to make your mini PC more convenient to use. This computer is equipped with a high-capacity battery of 5000mAh, which can help address the issue of low power. Its battery life exceeds 3 hours, so you can use it to watch videos, listen to music, or work.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com --data-urlencode width=390 --data-urlencode height=844 -o shot.webp
See the ScreenshotNeo API documentation for request options and the accepted parameters. Its parameter names also work with those used by other screenshot APIs, which can make switching easier. ScreenshotNeo can remove cookie and consent banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, failed loads, timeouts, and cache hits are not billed. Its MCP server includes take_screenshot, get_page_info, and capture_pdf for AI agents using Claude, Cursor, or another MCP client. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 screenshots.
Sign up for ScreenshotNeo’s free plan to try 1,000 screenshots a month without a card.
Frequently Asked Questions
Can I run the capture workflow manually as well as on a schedule?
Yes. The sample workflow includes workflow_dispatch, which lets you start it manually from the repository’s Actions page.
Recommended Free Tools
Does a viewport screenshot test a real phone?
No. Explicit viewport dimensions test responsive layout at those CSS dimensions. Device emulation adds settings such as user agent and touch behavior, but remains browser emulation rather than a capture from physical hardware.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




