我正在使用Selenium进行网页抓取,并且手动解决了验证码问题。我编写的应用程序的行为就像人类一样,随机等待,随机移动,随机点击。我使用VPN是因为我不想阻止自己的IP。
最近(2018年7月)有一些网站变得非常困难。
当我使用chrome浏览器并手动执行所有操作时,一切都很好。
当我使用selenium和chromedriver.exe时,即使我正确选择了所有图片,recaptcha v2也无法通过验证。
因此,这意味着我正在使用的IP没有被网站阻止。网站可以通过某种方式检测到使用硒或Chromedriver的用户
我尝试了以下操作,但都不起作用。
清除浏览器历史记录,Cookie .....
使用隐身窗口
禁用扩展名
禁用信息栏(chrome_options.add_argument(“-disable-infobars”))
在十六进制编辑器中编辑ChromeDriver.exe,将“ var key ='$ cdc_asdjflasutopfhvcZLmcfl_'”更改为“ var key ='xxxx_xxxxflasutopfhvcZLmcfl _'”
任何有关如何自动或手动解决Recaptcha v2的建议都非常感谢。
这是一个我无法使用Selenium和ChromeDriver.exe的网站:
https://courtclerk.org/records-search/search-by-case-number/
部分代码:
public void SeleniumTest()
{
var options = new ChromeOptions();
options.AddArgument(@"--incognito");
options.AddArguments("disable-infobars");
using (var driver = new ChromeDriver(myWebdriverPath, options))
{
driver.Navigate().GoToUrl("https://courtclerk.org/records-search/search-by-case-number/");
Thread.Sleep(random.Next(1, 2) * 5000);
if (driver.FindElement(By.Name("court[COA]")).Selected)
{
driver.FindElement(By.Name("court[COA]")).Click();
Thread.Sleep(random.Next(1, 2) * 600);
}
MessageBox.Show("Enter Case Number"); Thread.Sleep(1000);
MessageBox.Show("Input Capcha"); Thread.Sleep(1000);
}
}