Eternal and CloakHQ
80d9f7c14e
feat(js): add types to humanized method options ( #205 )
...
Replace `any` with proper TypeScript types on all humanized method options
(Playwright, Puppeteer, ElementHandle, Frame). Support flat per-call config
overrides alongside existing `human_config` style. Internalize `humanIdle`
duration computation with backward-compatible overloads.
Co-authored-by: Eternal <chasezou09@gmail.com >
2026-05-10 23:50:01 +02:00
114b3c826b
fix(js): preserve iframe scope in humanized frame actions ( #201 )
...
fix(js): preserve iframe scope in humanized frame actions
Frame actions (click, type, fill, etc.) now resolve selectors through frame.locator() instead of delegating to page.* methods, fixing iframe-scoped interactions.
Closes #184
Co-authored-by: manaskarra <manas.karra@gmail.com >
2026-05-10 18:13:29 +02:00
CloakHQ
f01902025a
fix: align humanize timeout default with Playwright's 30s auto-retry ( #172 )
...
The humanize layer hardcoded timeout=2000ms for element lookups, causing
locator.click() and page.click() to fail instantly instead of retrying
for 30s like standard Playwright. Aligned all defaults to 30000ms across
Python sync/async, JS Playwright, and JS Puppeteer paths. Bumped the
outer retry sleep from 200ms to 500ms for DOM mutation settle time.
2026-05-01 20:48:06 +02:00
lilos and GitHub
661b873dad
feat: per-call human_config, timeout forwarding, humanized scrollIntoViewIfNeeded ( #183 )
2026-04-28 20:34:17 +02:00
lilos and GitHub
2be8cdcc03
feat(humanize): add Playwright ElementHandle support and fix async tests ( #133 )
2026-04-10 22:18:14 +02:00
CloakHQ
7a0937cc54
feat(js): expose humanize module for CDP-connected browsers ( #126 )
...
Add ./human export path to package.json so users can import patchBrowser,
patchPage, and resolveConfig to humanize CDP-connected Playwright instances.
2026-04-09 18:06:29 +02:00
lilos
1af25d67bc
fix: support non-ASCII characters (Cyrillic, CJK, emoji) in humanized typing
2026-03-13 00:34:01 +01:00
lilos
7bf8836683
feat: add human-like behavioral layer (humanize option)
...
Bezier mouse curves, per-character typing with mistype simulation,
smooth micro-step scrolling, idle micro-movements between actions.
Supports both sync and async Playwright APIs. Patches page, frame,
context, browser, and Locator class methods.
Two presets: 'default' (normal speed) and 'careful' (slower, deliberate).
Configurable via HumanConfig dataclass / interface with full override support.
Bug fixes (from PR review):
- fill()/clear(): platform-aware select-all (Meta+a on macOS, Control+a elsewhere)
- sync Locator check()/uncheck(): wrap mouse_move in RawMouse-compatible object
- resolve_config(): raise error on unknown preset name
- Lazy-load human.config via __getattr__ in __init__.py
- humanPreset typed as 'default' | 'careful' literal union
- browser.newPage() patches implicit context
Tests: Python 36/36, JS Vitest 34/34, visual Python 17/17, JS 13/13
2026-03-08 12:49:42 +03:00