Javascript 硒和#x27;s mouseMove()和实际的鼠标移动?

Javascript 硒和#x27;s mouseMove()和实际的鼠标移动?,javascript,jquery,security,selenium,automation,Javascript,Jquery,Security,Selenium,Automation,假设我有元素A和元素B。我已经启动了Selenium或PhantomJS,它还可以通过坐标集移动鼠标 我找到了元素A(链接)和元素B(提交按钮)的形状。我画了一条贝塞尔曲线或将预先记录的人类鼠标移动从元素a转换到元素B 我的直觉是mouseMove()。这与实际使用鼠标有什么不同 如果我在我的网站上跟踪用户的鼠标移动,假设他们使用复杂的移动曲线,我能告诉他们他们正在使用自动化工具吗?根据我的经验,如果你从JS跟踪鼠标,而机器人只是使用selenium移动鼠标指针,而没有“复杂的移动曲线”答案是肯

假设我有元素A和元素B。我已经启动了Selenium或PhantomJS,它还可以通过坐标集移动鼠标

我找到了元素A(链接)和元素B(提交按钮)的形状。我画了一条贝塞尔曲线或将预先记录的人类鼠标移动从元素a转换到元素B

我的直觉是
mouseMove()。这与实际使用鼠标有什么不同


如果我在我的网站上跟踪用户的鼠标移动,假设他们使用复杂的移动曲线,我能告诉他们他们正在使用自动化工具吗?

根据我的经验,如果你从JS跟踪鼠标,而机器人只是使用selenium移动鼠标指针,而没有“复杂的移动曲线”答案是肯定的

但是,

如果“机器人”专门设计用于创建“复杂的运动曲线”或例如“回放记录的运动数据集”,我认为您不能。(也有否定的回答)

所以,


你可以设计一个“启发式解决方案”,但不是一个完美的解决方案。如果这是你想要的,我可以试着给你一些想法。否则,如果您可以遵循其他路径,我建议您使用某种硒检测验证码

硒仅使用JavaScript模拟鼠标输入。问得好。你是否试图阻止机器人访问你的网站?也许跟踪发送到服务器的请求的时间也是一种选择。一般来说,机器人应该比人类用户更快地“点击”(或输入)网页。相关,但从不同的角度来看:。我对硒检测非常好奇。在我的情况下,验证码恐怕不是一个选项。我对你们关于如何抓住非常复杂的僵尸的任何和所有想法都感兴趣。首先,我需要一些进一步的信息:你确定僵尸网络只使用硒吗?你的网站是什么?或者更准确地说,你网站上的僵尸网络是什么?我们还可以尝试匹配这些机器的“行为”或对它们进行指纹识别。我通过一个朋友的朋友拉了一些线来运行一个小测试,看看我可以使用第三方工具检测到多少。在12000次点击中,只有18.8%被业界领先的公司认定为机器人。我想增加这个数字。我使用自己的PhantomJ访问了这个网站,它没有阻止我,也没有让我破解验证码。我希望车辆不间断地通过。故障看起来是这样的:所以可以安全地说网络(我不能证实或否认)只使用了铬。其他的0.2%或其他什么是我,因为我使用Opera:)好的。有趣的研究,但令人不快的情况,认为你所问的(机器人检测)是网络安全世界的主要问题之一。无论如何不久前,有一种方法可以检测firefox(但我记得不是Chrome),但这不是你的情况。我没有检测selenium/PhantomJS的直接算法,但我的主要想法是使用一些已经存在的服务的试用版,比如这一个(看起来很有希望),查看他们使用的代码(客户端)并将其反转!