| Robotex |
A browser for your bots, over an API |
Robotex gets past anti-bot protection, runs a scenario on the page and hands your bot the cookies. From there the bot works with plain HTTP requests. |
https://robotex.sokolab.xyz/ |
Free · early access |
/blog/robotex-browser-automation-api |
How Robotex works |
|
|
| label |
href |
| Features |
#features |
|
| label |
href |
| How it works |
#how |
|
| label |
href |
| Community |
#community |
|
|
|
|
| label |
href |
| How it works |
#how |
|
|
| title |
lead |
items |
text |
| Why you need it |
Every website bot sooner or later runs into one of three problems: |
| a captcha |
| anti-bot protection |
| heavy JS that has to be rendered to submit a form |
|
A spider built on raw HTTP requests is helpless here, you need a real browser. But a browser is heavy, it has to be hidden from detection and kept next to the bot. Robotex takes that job over: the browser is used only where there's no way around it. |
|
| title |
items |
| Features |
| title |
text |
| Scenarios |
More than opening a page. Fill a form, click, move the mouse, wait for an element, grab a piece of HTML. |
|
| title |
text |
| Anti-bot pages |
Detects a Cloudflare check before and during a scenario and gets through it. If it escalates to an image captcha, sends it to a recognition service. |
|
| title |
text |
| Captcha |
The `captcha` step solves hCaptcha and other captchas via 2captcha before the form is submitted. |
|
| title |
text |
| Profiles |
Cookies, local storage and the browser fingerprint live in one profile. Locale and timezone match the proxy's geo. To the site it's still the same user. |
|
| title |
text |
| Real Chrome |
Chrome driven by Patchright, without the CDP leaks anti-bots use to detect automation. |
|
| title |
text |
| Any language |
It's a service, not a library. Your bot only needs an HTTP client, whatever it's written in. |
|
|
|
| title |
steps |
code |
| How it works |
| The bot sends a URL, an action scenario and its proxy to `POST /v1/solve`. |
| Robotex opens the page, passes the checks and runs the scenario. The browser profile is saved and returned in the `session_id` cookie. |
| The bot gets the cookies and User-Agent and keeps browsing on its own, **through the same proxy**. When it needs a browser again, it sends `session_id` and continues in the same profile. |
|
| caption |
body |
| Request |
POST /v1/solve
X-API-Key: <key>
{
"url": "https://example.com/login",
"actions": [
{"type": "fill", "selector": "#email", "value": "user@example.com"},
{"type": "fill", "selector": "#password", "value": "..."},
{"type": "click", "selector": "#submit"},
{"type": "wait_for", "selector": ".dashboard", "timeout": 30}
],
"proxy": "socks5://user:pass@host:port"
}
|
|
| caption |
body |
| Response |
{
"status": "ok",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) ...",
"cookies": [
{"name": "sessionid", "value": "...", "domain": ".example.com"}
],
"actions": [
{"type": "fill", "ok": true},
{"type": "fill", "ok": true},
{"type": "click", "ok": true},
{"type": "wait_for", "ok": true}
]
}
|
|
|
|
| title |
items |
| Where it stands, honestly |
| **It's an early MVP.** I grant access manually, and the API may change. |
| **It's free.** You only pay for your own proxies and, if needed, 2captcha. |
| Proxy quality matters a lot: no fingerprint will help on a dirty IP. |
| Turnstile doesn't pass on every site yet, I'm working on stability. |
|
|
| title |
lead |
links |
| Community |
Questions, ideas and bugs go to Redmine. Sign-up uses manual activation: register and I'll approve your account. |
|
|
Use Robotex only on sites where you have the right to do so. |