Use a real browser, wait for the page’s content of interest to become visible, and then capture it with Playwright. A navigation event alone may happen before a JavaScript-rendered pricing table, product card, or other component appears.
Capture a JavaScript-rendered page with Playwright
Playwright runs the page in a browser, so client-side scripts can render the content before you take a screenshot. The important step is to wait for a meaningful page-specific condition—not simply for navigation to finish. The example below waits for a visible “Pricing” heading, then captures the full scrollable page.
const { chromium } = require('playwright');
(async () => {
const browser = await chromium.launch();
try {
const page = await browser.newPage({
viewport: { width: 1440, height: 1000 }
});
await page.goto('https://competitor.example/', {
waitUntil: 'domcontentloaded'
});
await page.getByRole('heading', { name: 'Pricing' }).waitFor({
state: 'visible'
});
await page.screenshot({ path: 'competitor.png', fullPage: true });
} finally {
await browser.close();
}
})();
Install Playwright and its browser before running the script; the project’s screenshot guide and Page API reference describe capture and navigation options. Replace the example URL and heading with values that exist on the page you are allowed to access. The heading locator is illustrative: not every site exposes an accessible heading with that exact name.
Choose the right readiness signal
Wait for the specific element or text you need to inspect: for example, the main content container, a distinctive heading, or a pricing panel. Playwright locators find elements at the time they are used and provide auto-waiting behavior; see the locator guide. A visible target is more meaningful than assuming that a generic navigation milestone means every asynchronous component has finished rendering.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minute#1 Best Overall
- 【14" HD Display】The business and leisure activities will undoubtedly benefit from the mesmerizing clarity and brilliance.
- 【Intel Processor N150】Enjoy seamless multitasking, consistent performance, and significant energy conservation, making it an outstanding choice for your everyday computing needs.
- 【4GB DDR4 RAM】Get high-bandwidth performance for resource-intensive tasks. Run multiple applications at once and stay responsive.【128GB UFS】 Delivers blazing boot-up speed and enhanced storage capabilities. Effortlessly access your extensive digital library with ease.
- 【Intel Graphics】Enjoy vibrant colors and sharp details that bring your everyday content to life. 【720p HD Camera】Provides high quality video calls, virtual meetings and online interactions.
- 【Windows 11 S】Unlock endless possibilities with a user-friendly operating system, tailored to your needs.【Dimensions & Weight】12.76 x 8.86 x 0.71 inches, 3.24 lbs.【Ports】1x USB Type-C, 2x USB Type-A, 1x Headphone/microphone combo, 1x Media card reader, 1x HDMI 1.4b, 1x AC Smart pin. Wi-Fi 6, Bluetooth, Webcam.
A fixed sleep can appear to work, but it is a brittle production readiness strategy: it may capture too early on a slow run and waste time on a fast one. Playwright explicitly discourages networkidle as a test-readiness signal. Its Page API defines that condition as having no network connections for at least 500 ms, and recommends assertions or other observable conditions instead. Sites may keep requests open or load relevant content independently of network quiet.
Pick a screenshot mode
| What you need | Playwright capture | What to consider |
|---|---|---|
| What fits on screen without scrolling | page.screenshot({ path: 'view.png' }) |
Captures the visible viewport; content below the fold is omitted. |
| The entire scrollable page | page.screenshot({ path: 'full.png', fullPage: true }) |
Captures the full page as if displayed on a very tall screen. A long page can produce an unwieldy image. |
| One product card, pricing table, or navigation area | page.getByRole('region', { name: 'Plans' }).screenshot({ path: 'plans.png' }) |
Use a locator that actually identifies the intended component; inspect the current DOM if it does not. |
| A buffer for downstream processing | const image = await page.screenshot() |
Without a path, the screenshot API returns image data that your script can retain or process. |
The locator example is a pattern, not a guarantee that the target page has a region with that role and name. Adapt it to the page’s structure. The official screenshot documentation covers viewport, full-page, buffer, and element captures.
Rank #2
- ULTRA HD 4K CLARITY: Stand out in every video call with breathtaking 4K video at 30fps or smooth 1080p at 60fps. Powered by a premium 1/2.5" CMOS sensor and a wide f/1.78 aperture, this webcam captures every detail with vibrant color and stunning low-light performance-so you always look your best
- FAST AUTOFOCUS & SMART LIGHT CORRECTION: No more blurry moments with this webcam for PC. Advanced Phase Detection Auto Focus (PDAF) locks onto your face instantly and keeps you sharp-even when you move. Built-in light correction adapts to your environment, balancing brightness and contrast for a flawless image in dim rooms or bright spaces
- DUAL NOISE-CANCELING MICS: Speak with confidence using this webcam with microphones. Dual microphones with intelligent noise-canceling tech isolate your voice and reduce background noise-suitable for webinars, live streams, team meetings, and virtual interviews
- WIDE-ANGLE LENS & FLEXIBLE MOUNTING OPTIONS: Capture more of your world with an 80 field of view and full 360 swivel rotation. Whether this streaming webcam is mounted on a laptop, monitor, or tripod, it allows you to find the right angle for any setup
- BUILT-IN PRIVACY COVER & PLUG-AND-PLAY SIMPLICITY: Protect your privacy with a secure sliding lens cover that blocks the camera when not in use. Setup is a breeze-just plug into any USB-A port and start streaming, chatting, or recording instantly. The USB webcam is compatible with Zoom, Microsoft Teams, Skype, OBS Studio, and all major platforms across Windows, macOS, and Linux
Make page comparisons more consistent
For repeated captures, keep the viewport dimensions and capture mode consistent, and wait for the same meaningful page state each time. Decide deliberately how to handle animation, rotating banners, and changing live data: these can alter the image even when your script is unchanged.
Playwright’s screenshot options include scale, clipping, masks, and animation handling; consult the Page API reference for the available settings. Those controls can reduce some visual variation, but they cannot make changing third-party content static. Record the URL and capture time if you need to interpret differences later.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Troubleshoot blank, incomplete, or inconsistent screenshots
- Blank or incomplete content: Wait for the element or text that should appear after JavaScript runs. A navigation event does not establish that the particular component you need has rendered.
- The locator wait never completes: Check that the locator matches the current page, that the target is visible, and that a consent screen or page failure is not blocking it. Inspect the rendered DOM and choose a current role, text, label, or stable attribute.
networkidlehangs or fires at the wrong time: Ongoing requests can make network quiet unsuitable. Replace it with a locator wait or web assertion tied to the content you need.- The screenshot ends before the bottom of the page: Use
fullPage: truefor a full-scrollable-page capture rather than the default viewport capture. - The image differs between runs: Check for live data, animation, rotating promotions, and overlays. Standardize the viewport and readiness condition, then use screenshot options such as animation handling, clipping, or masks where appropriate.
- An element screenshot fails: Confirm the locator identifies the intended element in the current DOM. Prefer a meaningful role, text, label, or stable attribute over a brittle positional selector.
Or skip the browser setup
ScreenshotNeo provides a one-request screenshot API; see the API documentation for request options. For example, this cURL command saves a WebP capture of a page:
Rank #3
- This Certified Refurbished product is tested and certified to look and work like new. The refurbishing process includes functionality testing, basic cleaning, inspection, and repackaging. The product ships with all relevant accessories, a minimum 90-day warranty, and may arrive in a generic box. Only select sellers who maintain a high performance bar may offer 1Certified Refurbished products on Amazon.com.
- Powerful 10th Gen Intel Core i5: Features a quad-core i5-10210U processor (up to 4.2GHz Turbo Boost) for smooth multitasking and business productivity.
- High-Speed Memory & Storage: 32GB DDR4 RAM ensures seamless performance, while the 1TB M.2 NVMe SSD provides ultra-fast boot-up and file access.
- Stunning 15.6-inch FHD Display: Enjoy crisp visuals with 1920x1080 resolution.
- Enhanced Connectivity: Features Wi-Fi, Bluetooth, Type-C, HDMI, and Thunderbolt for versatile connectivity options.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
ScreenshotNeo accepts cookie or consent banners like a visitor and removes more than 60 known consent platforms, newsletter popups, and chat widgets before capture; those steps can be turned off. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify the page verdict and billing status. Its MCP server gives AI agents tools for screenshots, page information, and PDF capture. The free plan includes 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots. Try it with 1,000 free screenshots a month, no card required.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Access and permission considerations
A technically successful capture does not establish that automated access or redistribution is permitted. Check the target site’s applicable terms and access rules, especially if you plan to retain or publish competitor-page images. A login wall, consent flow, or technical defense may also change the steps required; the right handling depends on the site and your authorization.
Frequently Asked Questions
Does a page’s load event mean its JavaScript content is ready?
No. A specific asynchronously rendered component may appear later; wait for the target element or text.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problemsRank #4
- 【Efficient Quad-Core Performance】 Powered by a 1.8GHz Quad-Core processor, this mini laptop ensures smooth multitasking. With 2GB RAM and 64GB ROM (expandable to 1TB), it handles daily work and online tasks with ease.
- 【10.1" HD IPS Display & GMS Support】 Featuring a 1280x800 HD IPS screen, this cheap laptop delivers vibrant visuals. Pre-installed with Android OS and GMS, you get direct access to the Google Play Store for apps.
- 【Ultra-Portable & Lightweight Design】 Weighing only 1.76 lbs, this Blue computer is designed for mobility. Its compact form makes it an ideal companion for students and professionals for home schooling or trips.
- 【Versatile Connectivity Options】 Stay productive with dual USB 2.0 ports, a headphone jack, and a TF card slot. This computer for kids and adults features built-in Wi-Fi and Bluetooth for stable connections.
- 【Complete All-in-One Bundle】 This kid laptop kit includes the laptop, carrying bag, mouse, mouse pad, and power adapter. It is the perfect ready-to-use set for online classes, remote work, and entertainment.
Can I capture just a pricing table instead of the whole page?
Yes. Use a Playwright locator for that component and call its screenshot method.
Does `fullPage: true` capture content below the fold?
Yes. It captures the full scrollable page rather than only the visible viewport.
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.




