如何在网页抓取时绕过不可见的 recaptcha v3

问题描述 投票:0回答:1

这个网站

recaptcha v3
保护,并将用户重定向到
recaptcha v2
,即检测到异常流量或不良cookie时解决的复选框,尽管大多数时候它不会出现,所以我们剩下要解决的就是一个不可见的问题
 recaptcha
当我查看它的请求负载时,它是这样的

"form_type": "create_customer", 
"utf8": "\xe2\x9c\x93", 
"customer[first_name]": "myUsername", 
"customer[last_name]": "my_name", 
"customer[email]": "[email protected]", 
"customer[password]": "myPassword"
"recaptcha-v3-token": UNIQUE_RECAPTCHA_TOKEN

我的问题是这个令牌是如何突然解析的,有没有办法手动解析它?

我尝试从 github 上查看名为 Pypasser 的存储库,尽管它不起作用,并且从中解析的令牌与实际令牌完全不同。这是我编写的用于用其逻辑解析令牌的代码(失败):

import requests
from bs4 import BeautifulSoup
 
def get_token():
    # anchor url got from intercepting my request
    url = "https://www.recaptcha.net/recaptcha/api2/anchor?ar=1&k=6LcCR2cUAAAAANS1Gpq_mDIJ2pQuJphsSQaUEuc9&co=aHR0cHM6Ly9icmlja2hvdXNlbnV0cml0aW9uLmNvbTo0NDM.&hl=en&v=vm_YDiq1BiI3a8zfbIPZjtF2&size=invisible&cb=gcemax2j9za7"
    resp = requests.get(url)
    soup = BeautifulSoup(resp.text, 'html.parser')
    token = soup.find("input", {"id": "recaptcha-token"})['value']
    
    return token
print(gen_token())

任何人都可以建议我应该在哪里寻找更多有关验证码的信息,绕过任何参考、教程或任何类型的帮助,将不胜感激。谢谢

web-scraping recaptcha
1个回答
0
投票
  • 如果网站检测到异常流量,您可以考虑使用高级代理并根据每个请求轮换它们。
  • 使用 try & except 处理验证码。
  • 2captcha(推荐链接) - 此验证码解算器服务应该可以让您更轻松地解决验证码。
  • 他们的文档也很棒。

由于您的网站重定向到 recaptcha v2,您可以尝试这个 code

© www.soinside.com 2019 - 2024. All rights reserved.