如何使用Selenium Python绕过Capthca。
#python #自动化 #softwareengineering #selenium

嗨,大家 (请注意,本文不容忍或支持任何对技术的安全旁路或不道德使用)。

source imgflip

先决条件:

  1. opencv(cv2)
  2. Tesseract OCR
  3. 枕头(PIL)

现在让我们编码我们的要求。

1.登录页面

 Import the required modules as I shown below.

from selenium import webdriver
import cv2
from PIL import Image
from pytesseract import pytesseract


driver = webdriver()
driver.maximize_window()

# Now we will hit the website just pass your website link below.

driver.get(" Your Website Link Here")

2。捕获登录中的屏幕截图并进行裁剪。

# Taking screenshot of login page and saving it as image.png
driver.save_screenshot("image.png")

3。专注于感兴趣的领域,Menase裁剪的确切图像仅容纳Captcha块。

这是样本裁剪的图像。

Image description

img = cv2.imread('image.png')
# you guys have  define coordinates as per your page layout.
cropped_image = img[200:250, 60:200]  
cv2.imwrite("Cropped_Image.jpeg", cropped_image)

3.执行OCR-从裁剪图像中提取文本。

要从裁剪的图像中提取文本,我们使用Tesseract OCR。确保已安装了Tesseract并正确配置。我们为Tesseract可执行的路径和裁剪图像的路径设置了路径。

# Define path to tesseract.exe
path_to_tesseract = "Your path to tesseract.exe"

# Define path to the cropped image
path_to_image = "Your path to cropped image"

# Point pytesseract to the Tesseract executable
pytesseract.tesseract_cmd = path_to_tesseract
img = Image.open(path_to_image)

# Extract text from image
text = pytesseract.image_to_string(img)

现在将这些数据在文本变量中获取,然后使用发送键将其发送到Captcha Labelbox。

enetr_captcha = driver.find_element("element path to location").send_keys(text)

请记住,负责任地和道德地使用这些知识。可访问性是关于使数字世界更具包容性,而不是损害安全性。

结论 :

在这篇博客文章中,我们探索了如何使用Python,OpenCV和Tesseract OCR从图像中提取文本。尽管该技术具有合法的用途,但必须将此类知识用于正确目的,例如改善Web可访问性。

我希望如果可以的话,这将有所帮助,并评论yeehhhh!