用代码向90后逝去的青春致敬
点击上方“程序人生”,选择“置顶公众号”
第一时间关注程序猿(媛)身边的故事
图片源自:昨日青空
作者
Don Lex
如需转载,请联系原作者授权。
前段时间,腾讯宣布停止乐斗Ⅱ和QQ宠物的运营,然后就订阅号里就被各种回忆杀的推文刷屏了。今天也来称蹭一下"热点",虽然有点晚。
都说“陪伴是最长情的告白”,那些陪我们走过年少时光的小游戏,你还记得多少?
可能很多90后都玩过乐斗Ⅱ。但是很遗憾,今天的主角不是它,而是它的兄弟——“Q宠大乐斗”。今天分享的是:如何使用前几天分享的selenium的奇技淫巧,让“Q宠大乐斗”自动运行,自动打游戏。
第一步:分析链接,因为直接使用网页动画版(也就是上图)的网址的话,会有Flash动画,可能会因为网络的问题,导致延迟,从而影响程序的运行。所以选择直接关注微信公众号“Q宠大乐斗”,从开始游戏的接口进去,这样就可以进入文字版的游戏,减少不必要的网速占用。
第二步:通过审查元素找到相应的元素,使用selenium进行定位控制。
第三步:设置定时任务,让游戏脚本每天定时运行,游戏自动化,实现躺赢的最终理想,哈哈 。
1、因为等级原因,有一些功能可能对低等级不开放,所以这个游戏需要“私人订制”;
2、有一些奖励是需要等到了一定的活跃度才可以完领取,所以需要一定的游戏策略,否则就需要在程序中进行多次判断
因为这个游戏的任务有点多,所以分模块来写比较好,这样逻辑不会乱,代码的可读性也更强一点。
登录模块
通过上图可以找出登录的元素位置,直接使用selenium进行登录操作。
上面代码中的第14行是设置等待。直白一点就是:如果 WebDriver没有在 DOM中找到元素,将继续等待,超出设定时间后则抛出找不到元素的异常
(自动登录哦 :-)
其他模块
之前说过,等级不同,任务也不同。所以我这里就放上几个共同的模块。具体的任务看下图:
每日奖励模块
乐斗好友模块
其他的模块我这里就不放代码了,毕竟等级不一样,代码可能没有通用性。而且主要的方法就是定位元素,前篇推文已经详细介绍了,主要是设置等待时长和注意异常情况的判断处理就可以了。
设置好时间,因为这个游戏的宠物是靠体力来进行的并且每天只能进行一次任务,所以每天定时打一次就可以了。
今天这个自动打游戏的demo,只是单纯的练习一下selenium操作;当然也顺便回忆一下90后的生活,相信有一部分90后小时候还是会玩过这个游戏的。
可能有人就觉得这游戏有点low(确实有点low),那我只能昧着良心回一句:哥玩的不是游戏,是情怀,懂不懂 。
PS:源码在阅读原文里
- The End -
「若你有原创文章想与大家分享,欢迎投稿。」
加编辑微信ID,备注#投稿#:
程序 丨 druidlost
小七 丨 duoshangshuang
上期精彩内容
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
随时掌握互联网精彩
- 1 今天明天 都是小年 7924271
- 2 警惕!今年第一场大寒潮或波及全国 7994122
- 3 男孩背4个加特林烟花从下午等到天黑 7848019
- 4 商品供应有保障 假日消费活力足 7762302
- 5 王菲时隔7年再上春晚 将唱这首歌 7699145
- 6 公务员省考:学历要求越来越高 7503731
- 7 打工人你的早餐摊子已返乡 7474187
- 8 沈梦辰国色芳华出场镜头 7379890
- 9 苹果一夜之间没了8000亿 7285922
- 10 尹锡悦穿10号囚服 狱警叫他10号 7115086