การทำงานของโปรแกรม
- ทำงานเพียงครั้งเดียวแล้วจบการทำงาน
- พิมพ์ข้อมูล ID
- กด Tab เพื่อเลื่อนมาที่ช่องถัดไป
- พิมพ์ Password
- กด Enter เพื่อเข้าสู่ระบบ
เกมที่ผมจะนำมาทดสอบออโต้คือเกม Age of Wushu เซิฟเวอร์ ไต้หวัน
Code โปรแกรม
import pyautogui
import time
# หน่วงรอให้เปิดหน้าเกมพร้อมเตรียมทำงาน 3วินาที
time.sleep(3)
# พิมพ์คำว่า "id" โดยใช้ฟังก์ชัน typewrite ของ pyautogui
pyautogui.typewrite('ใส่ id เกมที่นี่')
# กดปุ่ม tab โดยใช้ฟังก์ชัน press ของ pyautogui
pyautogui.press('tab')
# พิมพ์คำว่า "pass" โดยใช้ฟังก์ชัน typewrite ของ pyautogui
pyautogui.typewrite('ใส่ pass เกมที่นี่')
# กดปุ่ม enter โดยใช้ฟังก์ชัน press ของ pyautogui
pyautogui.press('enter')
time.sleep(1)
pyautogui.press('enter')
ทดสอบการทำงาน
เปิดเกมให้เรียบร้อย ให้อยู่หน้าเตรียม login
จากนั้น เปิด run โปรแกรมของเรา แล้วสลับไปหน้าเกมแล้วรอหน่วงเวลา 3วินาทีให้โปรแกรมทำงานอัตโนมัติ และดูผลลัพธ์ว่าเป็นไปตามที่เราออกแบบไหม
ออโต้ Login แบบทับจอได้
ความพิเศษของแบบ ทับจอได้ คือ สามารถกดรันโปรแกรมได้เลยไม่จำเป็นต้องสลับมาหน้าจอเกมก็สามารถ พิมพ์ข้อความเองได้
โดยแบบทับจอเราจะใช้ ไลบลาลี่ของ autoit โดยการติดตั้งจากคำสั่ง pip install PyAutoIt
Code แบบทับจอ
import time
import autoit
# หน่วงรอให้เปิดหน้าเกมพร้อมเตรียมทำงาน 3วินาที
time.sleep(3)
#autoit คือชื่อฟังก์ชั่น
#control_sent คือคำสั่งการส่งข้อมูลแบบเบื่องหลัง
#control_send(title: ชื่อหน้าต่างโปรแกรม, control: ชื่อวัตถุหากไม่มีให้เว้นไว้, send_text: ข้อความที่ต้องการส่ง, mode: int = 0)
autoit.control_send("9Yin 9YIN-Xuanwu","","ชื่อ ID",0)
time.sleep(1)
autoit.control_send("9Yin 9YIN-Xuanwu","","{TAB}",0)
time.sleep(1)
autoit.control_send("9Yin 9YIN-Xuanwu","","พาส password",0)
time.sleep(1)
autoit.control_send("9Yin 9YIN-Xuanwu","","{ENTER}",0)
time.sleep(1)
autoit.control_send("9Yin 9YIN-Xuanwu","","{ENTER}",0)
ควรตั้งหน่วงเวลาหลังจบคำสั่งแต่ละคำสั่ง เนื่องจากการทำงานของโปรแกรมมีความเร็วมากจากการทดสอบข้อความจะขาดหายได้ ต้องตั้งหน่วงเวลาถึงจะเสถียรขึ้น
0 ความคิดเห็น