转载

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

下面是一段自动登录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) 

这里用到了鼠标点击和键盘输入,需要分别安装 PyMouse 和 PyUserInput ,安装好之后,就可以实现鼠标的点击和键盘的输入操作了。关于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() 

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

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

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

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

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

正文到此结束
Loading...