Menu

Python के माध्यम से इमेज captcha के साथ फ़ॉर्म को सबमिट करना सीखें


आपको क्या-क्या सीखने को मिलेगा

  • नौसिखियों के लिए बने इस ट्यूटोरियल में इमेज captchas के साथ फ़ॉर्म सबमिट करने के आप बुनियादी सिद्धांत सीखेंगे।
  • इमेज captcha के साथ आप इस प्रदर्शन फ़ॉर्म को सबमिट करेंगे।
  • अपने ब्राउज़र से फ़ॉर्म का विश्लेषण करके एकदम शुरू से शुरुआत करें। एक ऐसा कोड बनाना जारी रखें, जिससे डेटा को एक्सट्रेक्ट कर Anti Captcha सेवा के साथ captcha हल किया जाता हो।
  • किसी ऐसे कोड के साथ समाप्त करें, जो फ़ॉर्म डेटा को सबमिट कर सकारात्मक नतीजे की जाँच करता हो।

स्रोत कोड:

from anticaptchaofficial.imagecaptcha import *
import requests
import base64


def find_between(s, start, end):
    return (s.split(start))[1].split(end)[0]


response = requests.get("https://anti-captcha.com/demo?page=image_captcha")
base64str = find_between(response.text, ";base64,", "\">")
c_str = find_between(response.text, " name=\"c\" value=\"", "\">")

print(f"base64: {base64str}")
print(f"c_str: {c_str}")

# save base64 image to a temporary file
with open("tmp.file", "wb") as file:
    file.write(base64.urlsafe_b64decode(base64str))


solver = imagecaptcha()
solver.set_verbose(1)
solver.set_key("API_KEY_HERE")
captcha_text = solver.solve_and_return_solution("tmp.file")
if captcha_text != 0:
    print("captcha text "+captcha_text)
    res = requests.post("https://anti-captcha.com/demo/submit_image.php", data={
        "login": "testlogin",
        "pass": "testpass",
        "c": c_str,
        "captcha": captcha_text
    })
    if "test passed" in res.text:
        print("Our test passed!")
    if "Captcha test not passed" in res.text:
        print("Test NOT passed!")
else:
    print("task finished with error "+solver.error_code)

Github

https://github.com/anti-captcha/solving-captcha-concepts/blob/master/tutorial5.py