Custom Engine Captcha Issue
Ok there is an engine where many websites do not use recaptcha and some use recaptcha.
The only way for me to create an account is using post data method.
how can I make it so it recognizes which website has recaptcha or not and solve the recaptcha and sends value accordingly.
eg:
website 1 does not have recaptcha the it sends
post data=a&b&c
website 2 has recaptcha then it sends
post data=a&b&c&recaptcha_value
Comments
add fixed data
add fixed data condition
to add in the recaptcha response if you detect recaptcha code on the page and extract the sitekey
or
modify step
modify step condition
to send the submission process to a different step entirely if you detect recaptcha code on the page
For examples, just search through the existing engine files in windows explorer. Set up directory indexing for the Engines directory to enable text-based search for all the .ini files.
Hey Sickseofan,
I've worked with this exact scenario in custom engines before. Cherub's suggestions are spot on but let me break down the implementation a bit more so you can get this working properly.
For detecting reCAPTCHA on a page and handling it conditionally, you have two solid approaches:
Option 1: Using Fixed Data Conditions
This is my preferred method because it keeps everything in one submission step:
In your engine definition, add a "Check for String" verification before your submission step. Set it to look for typical reCAPTCHA markers like
g-recaptcha
ordata-sitekey
in the page source.Then create two fixed data entries:
a&b&c
a&b&c&recaptcha_value=%recaptcha%
For the second fixed data, add a condition by clicking "Add Condition" and set it to:
g-recaptcha
ordata-sitekey
For the first fixed data (without reCAPTCHA), add the opposite condition:
g-recaptcha
ordata-sitekey
This way, GSA SER will automatically choose the correct post data format based on whether it detects reCAPTCHA on the page.
Option 2: Using Different Steps
If your submission process is more complex with reCAPTCHA sites:
Create two separate submission steps in your engine.
For the first step (Step A), set your basic post data (
a&b&c
) and add a condition:g-recaptcha
For the second step (Step
, include your reCAPTCHA handling and set the condition:
g-recaptcha
In Step B, make sure to add the reCAPTCHA solving part with proper sitekey extraction. You can use regex like:
to extract the sitekey into a variable, then use it in your post data.
For more reliable detection, you might want to check for multiple reCAPTCHA indicators. Some sites load reCAPTCHA differently, so looking for both
g-recaptcha
anddata-sitekey
or evengoogle.com/recaptcha
can improve your detection accuracy.Also, don't forget to test your engine with both types of sites to make sure the conditions are working correctly. The verification log in GSA SER will show you which path it's taking during submission.
Hope this helps you get your engine working properly!