我有一个Python脚本,它使用一些凭据登录到一个页面(sso.acesso.gov.br),他们通常使用2Captcha API回答验证码。
问题是,最近它采取了一个错误后,验证码的答案,即使当我手动回答。顺便说一句,收到的错误信息是不同的,当我强迫回答错误,这使我相信我的脚本现在已经被检测到不知何故的网站。
如果我以用户身份打开Chrome浏览器,只需执行相同的步骤,我就可以登录,有时甚至不用验证码,而且每次都不会出错。
下面是我的代码:
from selenium import webdriver
from fake_useragent import UserAgent
import undetected_chromedriver as uc
from fp.fp import FreeProxy
user_path = 'C:\\PythonProjects\\User Data'
driver_path = 'C:\\PythonProjects\\107\\chromedriver.exe'
options = webdriver.ChromeOptions()
## Tactics to avoid being detected as automation
options.add_argument("--start-maximized")
options.add_argument('--disable-blink-features=AutomationControlled')
## User profile
options.add_argument(f"--user-data-dir={user_path}")
## User agent
ua = UserAgent()
options.add_argument(f'--user-agent={ua.random}')
## Proxy
proxy = FreeProxy().get()
options.add_argument(f'--proxy-server={proxy}')
## Set browser
driver = uc.Chrome(
driver_executable_path = driver_path,
options = options
)
## Set device memory info
driver.execute_script("Object.defineProperty(navigator, 'deviceMemory', {get: () => 8});")
## Set navigator webdriver to undefined
driver.execute_script("Object.defineProperty(navigator, 'webdriver', {get: () => undefined});")
## Open page
driver.get('https://sso.acesso.gov.br/login')
## From this point I insert CPF (user) and password, then answer captcha using 2Captcha
## I also have tried just set the browser and navigate manually, inserting data and answering captcha, but no success
你有什么建议绕过这个阻止?我不知道是什么检测和阻止我的浏览器。
如果我在bot.sannysoft.com上使用脚本,会得到以下结果:
Intoli tests
Fingerprint Scanner 1/2
Fingerprint Scanner 2/2
1条答案
按热度按时间uxhixvfz1#
在你第一次输入正确的验证码之前,再等待几秒钟,这可能会起作用,除非它另有设计。