X_SCRAPE_KEY_INVALID
Means
the key chord names no key a browser can press
Typical cause
terminal — the chord is the caller's own literal, so attempt 2 passes the identical string. Refused by parseKeyChord BEFORE any key goes down, on every driver: press() holds each modifier, presses the key and releases in reverse, and a chord refused halfway through would leave Control held on the page for every later verb. Four shapes: an unknown modifier (Ctrl, Cmd, meta — the browser holds only Meta, Control, Alt, Shift), an empty key or a trailing +, an empty chord, and a modifier written twice
Fix
spell the chord as zero or more of Meta, Control, Alt, Shift joined by + and then the key — 'Meta+K', 'Escape', 'Shift+Tab' — using the browser's own key names; type a literal + with page.type()