昨天不用加班,闲来无事,玩了几把大家来找茬。可惜眼力不够,总是找不出来,心想能不能写个外挂,帮忙找出在哪里。

在网上搜了一下,大体上也有一些利用python,计算来找茬的外挂。

本人python基础比较弱,特别是图像一方面的,能够会调用几个API就不错了。

首先,其实找茬就是核心利用python比较两个图片不同就行了。网上一个大神利用opencv搞出一个外挂,貌似很牛逼,可惜还是上面一句话,对于我等学渣,会调用api就不错了。opencv那么难的东西,就不是我能涉及的了。

第一步,肯定是要查找 找茬的窗口的句柄。

这里,网上相关的介绍还是比较多的,主要就是用到FindWindow来找到句柄。

import win32gui

import win32con

game_hwd = 0
while game_hwd == 0:
game_hwd = win32gui.FindWindow("#32770","大家来找茬")
if game_hwd:
break
time.sleep(2)

这样能够保证 获取到找茬窗口的句柄。

第二步就是抠图了

这里使用到ImageGrab,可以抓取屏幕上的图片。具体使用大家可搜一下。

这里关键就是两张图片不好定位。没办法,用最挫的方法,首先将窗体整张图给grab下来,然后沿着中间进行分开,也就是分成左右两部分,分别记为ima和imb。ima和imb现在还不能直接进行比较。还必须将边沿给去掉,怎么去掉呢,我用最挫的方法,就是用QQ截图,然后大致看边沿里图像有多少像素,然后将边沿去掉。

下图是游戏中的两张图片。

下面是实际运行时,得到的结果。

还是需要人工自己在原来图片上进行对照,比较麻烦。

下面是完整的程序

#coding=gbk

import win32gui
import time
import Image
import ImageChops
import win32con

from PIL import ImageGrab

#s=u"´ó¼ÒÀ´ÕÒ²ç"
game_hwd = 0

while game_hwd == 0:
game_hwd = win32gui.FindWindow("#32770","´大家来找茬")
if game_hwd:
break
time.sleep(2)

win32gui.ShowWindow(game_hwd,win32con.SW_RESTORE)
win32gui.SetForegroundWindow(game_hwd)  #强制将窗口放置最前面
game_rect = win32gui.GetWindowRect(game_hwd) #获取窗体的矩形坐标

#print game_rect

width = game_rect[2] - game_rect[0]
height = game_rect[3] - game_rect[1]
rect1 = (game_rect[0]+55,game_rect[1],game_rect[0]+width/2,game_rect[3]-100)   #沿中线分开,+55是因为去掉图像的左边沿
rect2 = (game_rect[0]+width/2,game_rect[1],game_rect[2]-55,game_rect[3]-100)   #沿中线分开,-55是因为去掉图像的右边沿

#具体的这个55,完全要根据自己的机器运行的实际情况,其实主要就是分辨率,我是通过QQ截图,然后数出来的这个值
ima = ImageGrab.grab(rect1)
imb = ImageGrab.grab(rect2)
#ima.show()
#imb.show()
#out.show()
out = ImageChops.difference(ima,imb)   #比较两幅图

out.show()

大家后续可以将这个图的差值,进行一系列的转换,然后再加到原来的图片中,只需要差值能够在原图中明显就可以了。
现在没更新一张图,都要重新将脚本运行一遍,后续再改进。

比较原始的QQ大家来找茬的原型相关推荐

  1. FindDifferent - QQ游戏快速找茬工具

    为什么80%的码农都做不了架构师?>>>    FindDifferent - QQ游戏快速找茬工具 原文来自:http://yhzhtk.info/2013/06/23/1-qq- ...

  2. 【转】菜鸟也来打造全自动QQ大家来找茬外挂

    菜鸟也来打造全自动QQ大家来找茬外挂 转载请注明:www.UNPACK.cn by y3y3y3 定位关键代码 zSound\\ClickRight.wav .text:0042DB40 loc_42 ...

  3. QQ游戏美女找茬外挂

    前段时间看到别人玩QQ游戏,美女来找茬,突然之间想到自己可以做个小外挂,自动比较两幅图,把不同之处标出来.软件自动化测试和开发简单的游戏外挂很相似.都是控制UI,然后模拟键盘和鼠标操作 思路: 1. ...

  4. 才子佳人与QQ游戏美女找茬外挂实现

    "我未成名君未嫁,可能俱是不如人?",唐朝才子罗隐一生怀才不遇,屡考未中,话说当初以寒士身份赴举,路过锺陵,即今天的江西进贤,结识了当地的一名乐营女子云英,郎才女貌,把酒言欢,一醉 ...

  5. 跟我学 编写QQ找茬辅助1 -原创文章

    今天把完美日志更新一下打算早点睡觉的.        被朋友拉着玩了一下QQ找茬..高手大有人在啊..很是悲惨..           朋友痛恨的说.不行,要找外挂玩玩..百度一下,也还有不少..对于 ...

  6. QQ找茬辅助工具的制作

    QQ找茬辅助工具的制作 转载请注明出处:http://www.cppblog.com/greatws/archive/2009/05/05/81996.html 这段时间GF一直在玩QQ找茬,看了一下 ...

  7. QQ找茬辅助工具 C#

    昨天晚上用C#做了一个QQ游戏"找茬"辅助工具.这个不能算是一个外挂工具,因为不涉及到服务器和客户端的问题,只涉及到图像处理的知识.目前只是实现了基本的功能,但是已经够用了,玩了几 ...

  8. QQ找茬辅助工具的制作[转]

    出处:http://www.cppblog.com/greatws/archive/2009/05/05/81996.html 这段时间GF一直在玩QQ找茬,看了一下,原理很简单,就是找到2附图片的不 ...

  9. 动手制作QQ找茬游戏外挂

    周末闲来无事,玩了腾讯的qq游戏,名字叫大家来找茬,游戏就是在两幅相同的图片寻找不同五处不同的地方,你和对手谁发现的快就赢,无奈自己眼睛不够尖,总是比对手慢,好在俺是名程序员,只好想点别的办法,一直都 ...

最新文章

  1. 使用计算机视觉在钢铁平面上检测焊接缺陷
  2. mysql绕过防火墙_[转载]使用sqlmap 绕过防火墙进行注入测试
  3. Windows xp 如何查看SID?
  4. 动态箭头gif图标_别以为只有专业人士才能做出酷炫的#动态跑分图#
  5. Linux打包软件版本带时间,带你写一个 linux 下的打包软件 tar
  6. Apache Solr Java 企业级搜索引擎
  7. nginx反向代理后获取不到客户端的ip地址问题
  8. Android Camera setRecordingHint函数 在部分手机上的问题。
  9. 【优化算法】动态粒子群算法的动态环境寻优算法【含Matlab源码 1125期】
  10. Java思维导图(3)
  11. 渝粤题库 陕西师范大学 《文字学概论》作业
  12. Newtonsoft.Json.JsonConvert.DeserializeObject首次转换太慢问题
  13. php和composer关系_使用Composer管理PHP依赖关系
  14. Mac安装双系统的那些坑
  15. itext7接口和类概述以及pdf常见操作
  16. reactinput聚焦事件_React中的事件
  17. Linux系统安装,教你安装一个属于自己的Linux系统
  18. 大城市容不下肉体,小城市容不下灵魂
  19. javascript(js)语法 将blob转arrayBuffer、arrayBuffer转Uint8Array、Uint8Array转String的方法
  20. Quartz 实现画图片、写文字、画线、椭圆、矩形、棱形等。三

热门文章

  1. 智慧应急解决方案-最新全套文件
  2. 集群Linux环境搭建
  3. 人脑是量子计算机科学实验,新发现!人类大脑就是台量子计算机:如此神奇
  4. RS485接线方式小科普
  5. Xshell7连接VirtualBox虚拟机
  6. 微博抽奖贴为什么到时间了不开奖_按这6个步骤做抽奖,微博涨粉翻10倍都不止...
  7. Flutter 学习第三天 面向对象 和 库的使用
  8. Linux 网络编程—— libnet库详细使用指南
  9. WEB和WAP有什么区别前端开发的趋势
  10. ProLiant Server(HP DL580等)开机密码的设定与修改