1
4
我有经验,建立一个简单的计算机视觉为一个在线纸牌游戏机器人。 我使用了一个跨平台的python库 自动复制 处理自动鼠标点击和键盘输入。bot捕获屏幕每0.5秒,然后将捕获的屏幕转换为numpy数组进行分析。python具有良好的图像处理(pil、opencv python绑定)和机器学习实用程序(scikit-learn)。对于简单的图像模式识别,机器人提取图像区域上像素亮度的平均值进行决策。对于复杂的问题,采用OpenCV模板匹配和SVM分类器。 服务器第一次捕获了我的bot,所以我想服务器端有一些bot检测。在添加了更多的随机性和灵活的决策之后,bot绕过了服务器端bot检测。 整个星期六我都过得很愉快。 |
2
4
在尝试解析屏幕图像并生成鼠标点击(这将非常困难)之前,首先查看浏览器和服务器之间的游戏实际发送/接收的数据。像平常一样与游戏互动,使用 WireShark 以捕获数据包并查看它是否是您可以自动化的东西。 不太可能(因为他们 不要 希望人们做你想做的事情),但与服务器的通信可能只是简单的带有参数的请求。(我知道很久以前MySpace游戏就是这样的,比如龙战和黑手党战争。) 如果数据是您可以解析和理解的,那么您可以完全跳过Flash接口,只需编写自己的。 |
3
1
我用C和一个简单的WebBrowser控件制作了许多bot。 不过,通常我尝试在元素上自动执行“click”功能,而不使用实际模拟光标和调用click。 例子:
我发现这比实际模拟光标容易得多,但是模拟光标也相对容易实现,下面是我通常使用的代码:
这将左键单击加载的WebBrowser控件中名为“elementID”的任何元素。注意其他可以轻松实现的mouseEventFlags: 下面是右键单击的示例:
|
Basj · 即使距离为3像素,也能检测到SVG线上的点击 2 年前 |
wendykr · JavaScript画布和鼠标位置 6 年前 |
Fajer Albloushi · 根据给定坐标移动鼠标 6 年前 |
HKVariant · 当玩家旋转到圆周率时,旋转速度为360 6 年前 |
Max · jQuery:鼠标跟随元素在滚动时不会粘住光标 6 年前 |