码迷,mamicode.com
首页 > 编程语言 > 详细

用Python脚本做一些网页游戏中力所能及的自动化任务

时间:2015-12-26 14:58:42      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:

下面是一段自动登录360传奇霸业游戏的脚本:

from pymouse import PyMouse
import time
import webbrowser
from pykeyboard import PyKeyboard

url = "http://cqby.wan.360.cn/game_login.php?server_id=S577&&src=loginhistory"
webbrowser.open_new_tab(url)
m = PyMouse()
k = PyKeyboard()
m.move(638, 620)
time.sleep(10)
m.click(638, 620)
time.sleep(2)
k.type_string("pwd")
time.sleep(1)
m.move(591, 480)
m.click(591, 480)

这里用到了鼠标点击和键盘输入,需要分别安装PyMousePyUserInput,安装好之后,就可以实现鼠标的点击和键盘的输入操作了。关于PyUserInput的官方文档点这里观看

鼠标的点击是依靠坐标来定位的,所以我们还需要一个脚本用来获取屏幕上的位置信息。通过在网上搜索,找到了如下脚本(这里我把相应的参数修改了一下,以适应本机的屏幕大小):

import Tkinter


class Tkwin:
    def __init__(self, root):
        self.root = root
        self.frame = Tkinter.Frame(root, bd=2)
        self.edit = Tkinter.Text(self.frame, width=1280, height=1300)
        self.edit.pack(side=Tkinter.LEFT)
        self.frame.place(y=0)
        self.edit.bind(<Button-1>, self.action)

    def action(self, event):
        self.edit.insert(Tkinter.END, "Window_location x:%d y:%d\n" % (event.x, event.y))
        self.edit.insert(Tkinter.END, "Screen_location x:%d y:%d\n" % (event.x_root, event.y_root))


root = Tkinter.Tk();
window = Tkwin(root)
root.minsize(1280, 800)
root.maxsize(1280, 800)
root.mainloop()

运行这个脚本就可以通过点击鼠标的方式来获取屏幕上相应的位置信息了(在终端里找到脚本并运行):

技术分享

OK,这样就可以确定传奇霸业页游上按钮的位置并输入我们想输入的信息了。在终端运行我们写好的自动登陆脚本,就实现了传奇霸业的自动登录:

技术分享

关于上面这个东西是怎么录制的,百度搜索LICEcap,下载安装后打开就可以开始录制屏幕上进行的操作了。

用Python脚本做一些网页游戏中力所能及的自动化任务

标签:

原文地址:http://www.cnblogs.com/LanTianYou/p/5077959.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!