第一次博客随笔——叶耀宗

   Python(发音:英[ˈpaɪθən],美[ˈpaɪθɑ:n]),是一种面向对象、直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法非常简捷和清晰,与其它大多数程序设计语言不一样,它使用缩进来定义语句。

  我最开始接触python是为了。玩游戏做脚本。自己从百度上学习的一知半解。

  我使用的是操作系统:Win10,语言版本:python3.7,IDE:VSCode,并且自己学习了几个模块:win32gui(用于切换游戏窗口),PIL(用于图像的处理),pymouse(用于控制鼠标点击),numpy(用于构造数字矩阵)

  第一步。肯定是要绑定窗口    通过win32gui模块调用Windows API实现对窗口的操作,


# wdname为连连看游戏窗口的名称,必须写完整
wdname=u宠物连连看经典版2,宠物连连看经典版2小游戏,‘\' 4399小游戏 www.4399.com一Google Chrome '
#取得句柄
hwnd-win32gui . F indWindow( 0 , wdname )
#将游戏窗口设置为最前显示
win32gui . SetForegroundWindow(hwnd)
time. sleep(1) 
 

一般我们游戏都有想点击的图片。然后我们就可以截图、切割截图。这一步做不好将直接影响到接下来图像识别的质量。我的做法是先用alt+PrintScreen快捷键全屏截图,然后粘贴到画图板上,手动记录截图区域左上角和右下角的像素坐标和每个图标的具体大小。知道了截图区域的长宽和每行每列图标的个数,就可以得到每个图标的长宽。

  调用ImageGrab.grab( )函数截取屏幕指定区域,该函数传入四个参数,前两个参数为截图区域的左上角坐标,后两个参数为右下角坐标;切割的过程有些繁琐,用双重for循环可以轻松搞定,调用crop( )函数切割,参数与grab( )函数一样;最后将切割得到的图标存入矩阵相应的位置。代码以下参考

#用Bgrab函数截图,参数力左上角和右下角坐标

image= ImageGrab.grab((417,257,885,569))

for x in range(8):

  image_ list[x]={}

    for y in range(12):

      top = x*TOP SPAN

      left = y*LEFT _SPAN

      right = (y+1)*LEFT_ SPAN

      bottom = (x+1)*TOP SPAN

      #用crop函数切割成小图标,参数为图标的左上角和右下角坐标

      im= image . crop( (left , top, right, bottom))

      #并将切割好的图标存入对应的位置

      image_ list[x][y]=im 

这是第一次搞的,连连看部分的代码。基本也是从百度里学来的。后面也做了尝试做一些自己玩的游戏的简单的脚本都没成功。现在也在认真学习。

以上就是第一次使用python的个人经历

猜你喜欢

转载自www.cnblogs.com/a1214955637/p/10630309.html
今日推荐