python脚本打google首页的糖果篮子游戏

来源:互联网 发布:java编辑器手机版汉化 编辑:程序博客网 时间:2024/05/01 10:04

chrome的主页新建标签会有logo游戏, 今天的是打糖果篮子掉糖果的小游戏。因为是google 15年生日.

后记: 这两天新建标签看不到这个游戏了,这个游戏的地址是: http://www.google.com/doodles/googles-15th-birthday

注意: 现在这个页面比新建标签的页面长, 如果当前焦点不在游戏部分, 按空格键会变成pagedown下一页的功能, 所以需要先点一下游戏区, 不需要点游戏界面, 否则会挥出一棒子击打篮子, 只要点<>左右箭头之间, 除了游戏界面的灰色区域, 就可以使键盘输入焦点处于游戏可以接收按键的状态. 

当然, 你也可以审查元素, 删掉下面那一堆没用的html元素, 然后使焦点处于游戏区.

开始之后, 按照一定的时间间隔按空格键, 小盲人会挥动棒子击打糖果篮子,然后会掉下糖果。击打10次之后,游戏结束。



这是我手工玩的最高分了。

击打的关键就是要在篮子下落的最快速度的时候,尽力挥出你的那一棒子,才能掉下最多的糖果。

打着打着,觉得不过瘾,就想到用程序来打,为了减少手工操作,不用老是用手去按空格键,我用python写了个小脚本来打这个游戏。

1. 到这里下载 autopy        https://pypi.python.org/pypi/autopy/2. 下载我上传的击打脚本自己修改, 主要是调整击打时间的间隔

用我写的candies.py击打糖果篮。这个脚本附在最后面。

使用方法:

1. 修改脚本2. 执行脚本, 然后在3秒中之内切换到chrome浏览器3. 3秒钟后, 你就看到它开始打了


关键的关键就是,调整好你的按键时间间隔。
脚本使用autopy这个跨平台的库,来调用你的按键,比如按空格键,A-Z,Shift,Alt,Ctrol等等, 这个小游戏里只需要按空格键。

candies.py

#!/usr/bin/env python"""Play http://www.google.com/doodles/hurdles-2012 .Code based on https://gist.github.com/3287367 . """import timefrom autopy import keydef play():    print '# switch to the candies game in your browser (you have 3 seconds)'    time.sleep(3)    s = time.time()    n=0    while time.time() - s < 15:        n=n+1        ##for _ in range(14):        ##    key.tap(key.K_LEFT)        ##    key.tap(key.K_RIGHT)        key.tap(' ')        if n<4:            time.sleep(0.01*n+0.1)        else:            time.sleep(0.12)#############################################################################if __name__ == "__main__":    play()

有人说python能做游戏外挂,这个不是假话,只是比较复杂的外挂可能比较难做而已。


说说结果,通过不断的调试, 我的脚本打出了155分的成绩。

当然,不是上面的脚本,具体的就看你自己的调试了。


这是一个较量。。。


已经用脚本打到了170分了.

原创粉丝点击