我最近注册了oneplusone网站https://account.oneplus.net/sign-up,并注意到这个复选框重新开始
它是如何工作的,我如何在我的网站上使用它?比那些神秘的单词/数字要好得多:)
recaptcha网站没有提及任何新的重新收回方法... https://www.google.com/recaptcha/intro/index.html
故事:
解决验证码的方法之一,如谷歌ReCaptcha,是试图模仿人类鼠标动作:动作,悬停和点击.
问题:
如何通过Selenium将鼠标移动到B样条轨迹之后的特定元素?
请注意,常规browser.actions().mouseMove(elm).perform();会直接"跳"到元素并且太快.我的理解是,这是一个减慢运动速度的问题,在B样条轨迹的数学模型之后,从一点到另一点平滑地"跳跃".
我们使用的是Protractor/JavaScript,但问题实际上与语言无关. 请注意,我并不是要尝试解决验证码,也不是为了"使用验证码解决新恶意机器人在这里和那里违反使用条款"的空间.我只是好奇并渴望在测试自动化领域获得更多技能.
我正在使用Puppeteer进行Web爬网,但我刚刚注意到,有时由于我在计算机上进行的访问次数众多,我试图抓取的网站会要求提供验证码。验证码形式如下所示:

因此,我将需要有关如何处理此问题的帮助。我一直在考虑将验证码表单发送到客户端,因为我使用Express和EJS来将值发送到我的索引网站,但是我不知道Puppeteer是否可以发送类似的内容。
有任何想法吗?
我实际上正在尝试e2e测试我的简单应用程序,并且在处理angular-recaptcha(https://github.com/VividCortex/angular-recaptcha)时遇到一些麻烦。
这是我的测试:
it('should redirect on another page', function() {
browser.get('http://127.0.0.1:3000/#/');
var userName = element(by.model('auth.loginInfos.username'));
userName.sendKeys('consumer1@eco.com');
var password = element(by.model('auth.loginInfos.password'));
password.sendKeys('consumer1');
var recapt = element(by.id('recaptcha'));
recapt.sendKeys();/* How can I put the recaptcha value to true ? */
var btn = element(by.className('btn'));
btn.click();
/**
* Assertions etc...
*/
});
Run Code Online (Sandbox Code Playgroud)
因此,您可以看到我正在尝试填充Recaptcha值,但我不知道如何进行。
你能帮助我吗 ?
注意:我正在使用量角器
谢谢你的帮助
javascript ×2
protractor ×2
selenium ×2
angularjs ×1
automation ×1
bots ×1
captcha ×1
puppeteer ×1
recaptcha ×1
security ×1
web-scraping ×1