Browser Engines
Webrain drives four engines through one CDP backend. Picking the right one is the difference between a 12-second page load and a 2-second one — or between a working click and a silent no-op.Getting each engine
To route a specific batch to real Chrome (e.g. for interactive SPAs), pass the
CDP endpoint directly:
lightpanda vs obscura for batches
- obscura opens N parallel tabs —
concurrencyis real overlap. - lightpanda
serveholds ONE browser context; a 2ndTarget.createTargeterrorsTargetAlreadyLoaded, sowebrain_batchdetects it and runs all URLs sequentially on one reused tab. Same tool call, same schema — just no intra-call parallelism. Pick obscura for large parallel crawls, lightpanda for footprint/velocity per page.
a11y notes
Google/Material widgets are often notbutton: dropdowns are combobox,
menu items option, segmented controls radio/tab. If role=<x> returns
[], drop the role filter and filter on the visible label text instead
(filter matches name, value, or css_path, case-insensitive). If the whole tree
is empty, the page never rendered — check challenge/consent.