Solving reCaptcha Using Selenium and Capsolver Extension
In this blog, we'll guide you through the process of setting up Selenium with the Capsolver extension to solve reCaptcha v2. This method can also be applied to other types of captchas.
1. Installing Selenium and Required Components
First, you need to install Selenium and other necessary components. You can do this using pip:
pip install selenium
Make sure you have the appropriate drivers for the browser you intend to use (e.g., ChromeDriver for Google Chrome, GeckoDriver for Firefox).
2. Configuring the Capsolver Extension
Download the Capsolver extension from here. Unzip it into the ./CapSolver.Browser.Extension
directory at the root of your project.
The extension offers various settings, including automatic captcha solving, proxy support, and more. These settings are located in ./assets/config.json
. Here's an example of the configuration:
{
"apiKey": "YourApiKey",
"useCapsolver": true,
"useProxy": false,
"proxyType": "http",
"hostOrIp": "",
"port": "",
"proxyLogin": "",
"proxyPassword": "",
"enabledForBlacklistControl": false,
"blackUrlList": [],
"enabledForRecaptcha": true,
"enabledForRecaptchaV3": true,
"enabledForHCaptcha": true,
"enabledForFunCaptcha": true,
"reCaptchaMode": "token",
"hCaptchaMode": "click",
"reCaptchaDelayTime": 0,
"hCaptchaDelayTime": 0,
"reCaptchaRepeatTimes": 10,
"reCaptcha3RepeatTimes": 10,
"hCaptchaRepeatTimes": 10,
"funCaptchaRepeatTimes": 10
}
Insert your API key in the apiKey
field in ./assets/config.json
. You can find your API key on the Capsolver page.
For this example, we'll use the reCaptchaMode
set to token
, but you can also use click
mode for reCaptcha.
3. Setting Up Selenium to Solve reCaptcha with Capsolver Extension
First, you need to set up Selenium WebDriver and configure it to use the Capsolver extension. Here's an example using ChromeDriver in Python:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import os
def main():
extension_path = os.path.abspath('./CapSolver.Browser.Extension')
chrome_options = Options()
chrome_options.add_argument(f'--load-extension={extension_path}')
driver = webdriver.Chrome(options=chrome_options)
driver.get('https://www.google.com/recaptcha/api2/demo')
# Wait for the captcha to be solved automatically by the extension
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, 'recaptcha-demo-submit')))
# Here, you can proceed with your form submission or any other actions post-captcha solving
driver.quit()
if __name__ == "__main__":
main()
Full Code:
The provided Python script is complete and ready to run. Ensure you've correctly set up your environment with the required packages and drivers, and don't forget to adjust the extension_path
as necessary to point to your Capsolver extension directory.
And that's it! You have successfully solved reCaptcha v2 using the Capsolver Extension and Selenium in Python. To solve other types of captchas, simply follow the same steps and adjust accordingly.
Capsolver Team 💜