Я испытываю проблемы с решением CAPTCHA с использованием услуги 2Captcha. Вот разрушение моей ситуации: < /p>
ожидаемый результат: < /strong>
Я ожидал, что капча будет правильно решена каждый раз, что приводит к успешной проверке после отправки токена Captcha. всегда неправильно, пока остальные верны. Чтобы решить проблему, я связался с поддержкой 2Captcha, и они рекомендовали блокировать рендеринг CAPTCHA на моем конце, чтобы избежать неправильных параметров данных. Я реализовал их советы, но проблема все еще сохраняется.def solve_captcha(public_key, page_url, blob,driver):
time.sleep(20)
task_payload = {
"clientKey": APIKEY,
"task": {
"type": "FunCaptchaTaskProxyless",
"websiteURL": page_url,
"websitePublicKey": public_key,
"funcaptchaApiJSSubdomain": "roblox-api.arkoselabs.com",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36",
"data": {"blob": blob}
}
}
try:
response = requests.post(f"{APIURL_2CAPTCHA}/createTask", json=task_payload).json()
if response.get("errorId") != 0:
print(f"Error creating task: {response}")
return None
task_id = response.get("taskId")
print(f"Task created successfully. Task ID: {task_id}")
for attempt in range(30):
print(f"Checking task status... Attempt {attempt + 1}/30")
time.sleep(10)
result = requests.post(f"{APIURL_2CAPTCHA}/getTaskResult", json={"clientKey": APIKEY, "taskId": task_id}).json()
print(result)
if result.get("status") == "ready":
token = result.get("solution", {}).get("token")
print(f"Captcha solved successfully! Result token: {token}")
return token, task_id
elif result.get("errorCode") == "ERROR_CAPTCHA_UNSOLVABLE" :
print("Error: Captcha is unsolvable.")
break
else:
print("Captcha not ready yet, retrying...")
print("Task timed out or failed.")
driver.refresh()
TryLogin(driver=driver)
startCaptchaProccess(driver=driver, ver="2CAPTCHA")
except Exception as e:
print(f"failed somewhere in the solve captcha proccess. {e}")
return None
< /code>
Я также перехватываю URL, чтобы заблокировать рендеринг Captcha следующим образом: < /p>
blocked_urls = [
"https://arkoselabs.roblox.com/rtig/image?challenge"
]
def interceptor(request):
if any(blocked in request.url for blocked in blocked_urls):
print(f"Intercepting and faking 200 OK for: {request.url}")
# Create fake 200 response
request.create_response(
status_code=200,
headers={'Content-Type': 'image/png'},
body=b'Haha you stinky i faked'
)
url = request.url
if url and "publicKey=" in url:
publicKey = url.split("publicKey=")[1].split("&")[0]
Blob = url.split("dataExchangeBlob=")[1].split("&")[0]
print(f"Public key: {publicKey}")
print(f"Blob: {Blob}")
print("starting to solve captcha")
token, task_ID = solve_captcha(publicKey, page_url=driver.current_url, blob=Blob, driver=driver)
if token:
print("Injecting token..")
submit_captcha(driver, token, task_ID)
< /code>
Когда я отправляю токен с этим фрагментом: < /p>
captcha_input = driver.find_element(By.ID, "FunCaptcha-Token")
driver.execute_script("arguments[0].setAttribute('value', arguments[1])", captcha_input, token)
print("Captcha token injected successfully!")
try:
time.sleep(2)
for x in range(10):
button = driver.find_element(By.XPATH, "//button[text()='Submit']")
button.click()
time.sleep(5)
print("Captcha form submitted!")
try:
driver.find_element(By.XPATH, "//button[text()='Try again']")
print("Captcha solved was inncorect. Reloading..")
driver.refresh()
TryLogin(driver=driver)
startCaptchaProccess(driver=driver, ver="2CAPTCHA")
except:
pass
< /code>
Я неоднократно получаю сообщение, указывающее, что CAPTCHA решали неправильно, побуждая меня перезагрузить страницу. captcha] (https://i.sstatic.net/26fvvxym.png)] (https://i.sstatic.net/9na4igkn.png)
Запрос:
может предложить дополнительные меры. Выпуск?
Заранее спасибо за помощь!
Подробнее здесь: https://stackoverflow.com/questions/795 ... -incorrect
Решение Arkoselabs funcaptcha с использованием 2Captcha API. (CAPTCHA неверно) ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
ERROR_BAD_PARAMETERS с 2Captcha при попытке решить FunCaptcha в LinkedIn
Anonymous » » в форуме Python - 0 Ответы
- 13 Просмотры
-
Последнее сообщение Anonymous
-