用Python脚本做一些网页游戏中力所能及的自动化任务
下面是一段自動(dòng)登錄360傳奇霸業(yè)游戲的腳本:
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)
這里用到了鼠標(biāo)點(diǎn)擊和鍵盤輸入,需要分別安裝PyMouse和PyUserInput,安裝好之后,就可以實(shí)現(xiàn)鼠標(biāo)的點(diǎn)擊和鍵盤的輸入操作了。關(guān)于PyUserInput的官方文檔點(diǎn)這里觀看。
鼠標(biāo)的點(diǎn)擊是依靠坐標(biāo)來(lái)定位的,所以我們還需要一個(gè)腳本用來(lái)獲取屏幕上的位置信息。通過(guò)在網(wǎng)上搜索,找到了如下腳本(這里我把相應(yīng)的參數(shù)修改了一下,以適應(yīng)本機(jī)的屏幕大?。?/p>
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
" % (event.x, event.y))
self.edit.insert(Tkinter.END, "Screen_location x:%d y:%d
" % (event.x_root, event.y_root))
root = Tkinter.Tk();
window = Tkwin(root)
root.minsize(1280, 800)
root.maxsize(1280, 800)
root.mainloop()
運(yùn)行這個(gè)腳本就可以通過(guò)點(diǎn)擊鼠標(biāo)的方式來(lái)獲取屏幕上相應(yīng)的位置信息了(在終端里找到腳本并運(yùn)行):
OK,這樣就可以確定傳奇霸業(yè)頁(yè)游上按鈕的位置并輸入我們想輸入的信息了。在終端運(yùn)行我們寫好的自動(dòng)登陸腳本,就實(shí)現(xiàn)了傳奇霸業(yè)的自動(dòng)登錄:
關(guān)于上面這個(gè)東西是怎么錄制的,百度搜索LICEcap,下載安裝后打開(kāi)就可以開(kāi)始錄制屏幕上進(jìn)行的操作了。
最后即興賦詞一首《林子聰·再見(jiàn)》:
一入傳坑深似海,不知怎進(jìn)此中來(lái)。若能回到半年前,網(wǎng)頁(yè)彈窗、游戲廣告,一律不點(diǎn)開(kāi)。要怪都怪林子聰,一直游戲到現(xiàn)在。
已經(jīng)快有小一年,充值接近五千塊。然并卵,上不能搶boss,下不能虐菜。真是不想再玩下去,投了太多又不舍離開(kāi)。唉,無(wú)奈。
總結(jié)
以上是生活随笔為你收集整理的用Python脚本做一些网页游戏中力所能及的自动化任务的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 搅拌车液压油箱滤网后面的弹簧气囊是什么?
- 下一篇: 我国加快推进国际月球科研站大科学工程,按