captcha Scenario 5 — WAF Block with Proxy Rotation Retry
Written by RTILA X Engineering Team
Advanced ~10 min
Prerequisites: captcha/3 captcha/4
What You'll Learn
Combine captcha solving with stealth settings
Real-World Use Case
Achieving high success rates on protected sites
LIVE DEMO
Access Blocked by WAF
Your request has been blocked.
Reference: WAF-2025-001
EXPECTED OUTPUT
RTILA X PROJECT JSON
{
"name": "WAF_Proxy_Rotation_Retry",
"settings": {
"urls": [
"https://learn.rtila.com/scenarios/captcha/5"
],
"proxyEnabled": true,
"proxyList": "http://proxy1:8080\nhttp://proxy2:8080"
},
"datasets": {
"waf_data": {
"item_selector": "css=table.waf-content-table tr",
"properties": [
{
"name": "field",
"type": "text",
"selector": "css=td:nth-child(1)"
},
{
"name": "value",
"type": "text",
"selector": "css=td:nth-child(2)"
}
]
}
},
"commands": [
{
"command": "if",
"params": {
"condition": {
"type": "script",
"expression": "document.body.innerText.includes('Access Blocked by WAF')"
},
"then": [
{
"command": "comment",
"params": {
"text": "Rotate proxy and retry"
}
},
{
"command": "goto",
"params": {
"url": "https://learn.rtila.com/scenarios/captcha/5"
}
}
],
"else": []
}
},
{
"command": "wait_for_selector",
"params": {
"selector": "css=.waf-content"
}
},
{
"command": "extract_data",
"params": {
"dataset": "waf_data"
}
}
]
}
A script condition detects WAF block text and triggers a proxy rotation retry. The second goto request uses the next proxy from the configured list and reaches the real content.
Did you complete this scenario?
Ready to run this automation?
Copy the project JSON above, open RTILA X, create a new project, and paste it.
This scenario covers 2 RTILA X commands and is referenced in 2 learning articles.
Continue Learning
Was this helpful?
Thank you for your feedback!