下面是一段自动登录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,下载安装后打开就可以开始录制屏幕上进行的操作了。

最后即兴赋词一首《林子聪·再见》:

一入传坑深似海,不知怎进此中来。若能回到半年前,网页弹窗、游戏广告,一律不点开。要怪都怪林子聪,一直游戏到现在。

已经快有小一年,充值接近五千块。然并卵,上不能抢boss,下不能虐菜。真是不想再玩下去,投了太多又不舍离开。唉,无奈。

用Python脚本做一些网页游戏中力所能及的自动化任务的更多相关文章

  1. 使用python脚本实现统计日志文件中的ip访问次数

    使用python脚本实现统计日志文件中的ip访问次数,注意此脚本只适用ip在每行开头的日志文件,需要的朋友可以参考下 适用的日志格式: 106.45.185.214 - - [06/Aug/2014: ...

  2. Windows 下针对python脚本做一个简单的进程保护

    前提: 大家运行的脚本程序经常会碰到系统异常关闭.或被其他用户错杀的情况.这样就需要一个进程保护的工具. 本文结合windows 的计划任务,实现一个简单的进程保护的功能. 利用py2exe生产 ex ...

  3. Python脚本模拟登录网页之CSDN篇

    1. 通过Firefox配合插件Tamper Date获取登录时客户端向服务器端提交的数据, 并且发现lt和execution这两个字段每次登录时都不一样. POSTDATA=username=you ...

  4. 网页游戏中PK系统的实现

    在游戏开发过程中,写过一个简单的PK系统面板,涉及到前端和后端的交互,我将自己制作的流程分享给大家,大概流程是这样:前端发送PK邀请给后端,后端受到请求后将信息返回给前端处理,先来看下整个流程图及思路 ...

  5. Python脚本模拟登录网页之ZiMuZu篇

    ZiMuZu.tv这个网站喜欢看电影看美剧的人一定都熟悉. 这个网站原先的升级策略是每天登陆网站, 然后去一个"每日签到"的页面点击一个签到按钮, 以实现帐号等级的升级. 之前网上 ...

  6. Python脚本模拟登录网页之GitHub篇

    1. 通过Firefox配合插件Tamper Date获取登录时客户端向服务器端提交的数据, 并且发现authenticity_token这个字段每次登录时都不一样. POSTDATA=commit= ...

  7. Python脚本自动提取和替换代码中的中文

    # -*- coding: utf-8 -*- import os import os.path import re import sys reload(sys) sys.setdefaultenco ...

  8. 设置eclipse中python脚本的编码格式

    今天在运行python脚本时报如下错误: SyntaxError: Non-ASCII character '\xe5' in file D:\pythonlearn1\src\day01\direc ...

  9. Python能做什么

       There should be one--and preferably only one --obvious way to do it. 首先,对于小白来说,Python比较容易上手.额就是个活 ...

随机推荐

  1. (转)@SuppressWarnings的使用、作用、用法

    在java编译过程中会出现很多警告,有很多是安全的,但是每次编译有很多警告影响我们对error的过滤和修改,我们可以在代码中加上 @SuppressWarnings(“XXXX”) 来解决 例如:@S ...

  2. 找区间连续值(HDU5247)

    找连续数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  3. extjs grid 单元格 多选

    new Ext.grid.CellSelectionModel({ last : false, // 上一次选中的单元格 selections : [], // 选择区缓存 handleMouseDo ...

  4. JSon_零基础_001_将布尔类型数组转换为JSon格式字符串,返回给界面

    将布尔类型数组转换为JSon格式字符串,返回给界面 需要导入包: 编写bean: package com.west.webcourse.po; /** * 第01步:编写bean类, * 下一步com ...

  5. oracle ebs request一直pending

    如果提交请求以后,状态一直是pending状态,可以在“工具”打开“Manager”,查看一下Maximum是否有设置错,另外pending的数量当前是多少. 如果Maximum是1,pending是 ...

  6. Sublime怎样新建HTML文档

    1.在右下角有个plain text的标志,点击,选择文件类型为HTML 2.保存为HTML文档 3.这时候输入"!"(注意一定要选择对输入法) 4.然后按"Tab&qu ...

  7. Openstack的删除错误网桥,虚拟网络

    在实验openstack的各种网络模式时,可能会产生一些错误的网络指向,需要删除那些网桥. 执行前 [root@node-9 ~]# ifconfig br40 Link encap:Ethernet ...

  8. 创建数据库和表的SQL语句【转】

    创建数据库和表的SQL语句 转至http://www.cnblogs.com/philanthr/archive/2011/08/09/2132398.html 创建数据库的SQL语句: 1 crea ...

  9. js之arguments对象的使用

  10. mysql相关总结

    mysql设置初始密码和更改密码(ZIP文件解压安装): http://blog.csdn.net/stypace/article/details/38232393