# X_SCRAPE_CAPTURE_INVALID

## Means

the capture names a framing no picture can be taken with

## Typical cause

**terminal** — the rectangle is the caller's own literal, so attempt 2 passes the identical one, and it is refused before any driver runs, so there is no half-done capture to resume. Three shapes: `fullPage` beside a `clip` (CDP silently ignores one, so the caller gets a picture they did not ask for), a rectangle with no area or a non-finite number, and a `clip` on `page.pdf()`, which has no crop and would answer a whole-page PDF to a caller who asked for one component. A rectangle merely BELOW THE FOLD is accepted — this package sets and reads no viewport, and refusing it would reject the component-screenshot case it exists for

## Fix

drop `fullPage` or drop `clip`; measure the element with `page.query('<selector>')` and pass a rectangle with a positive width and height; a PDF has no crop — use `page.screenshot({ clip })`

[Scraping](/error-codes#scraping)
