package help control emulator
Project description
emulator
this package hỗ trợ điều khiển các phần mềm giả lập (Hiện tại chỉ hỗ trợ phần mềm LDPlayer)
Installation
pip install emulator-thw
Usage
Example started
LDPlayer
import emulator
ldplayer_directory = "C:/LDPlayer/LDPlayer4.0"
ld = emulator.LDPlayer(ldplayer_directory)
có hai cách để lấy player trong LDPlayer là dùng index
ld.emulators[0].start()
hoặc dùng name
ld.emulator["LDPlayer"].start()
. Tôi khuyên bạn nên sử dụng index, vì name có thể trùng lặp dẫn tới điều khiển sai player.
tạo player mới
em = ld.new("New-LDPlayer")
em.start()
xóa player
em_remove = ld.emulators[0]
ld.remove(em_remove)
sao chép player
em_copy = ld.emulators[0]
ld.copy(em_copy)
sắp xếp các cửa sổ player
for em in ld.emulators:
em.start(wait=False)
ld.sort_window()
tạo các hành động
em = ld.emulator[0]
em.start()
em.tap((100, 100)) # code từng dòng
em.wait(3).swipe((200, 100), (10, 100)).wait(3).quit() # code 1 chuỗi hành động
Bỏ qua quit()
bằng cách sử dụng with
with ld.emulators[0].start() as em:
em.tap((100, 100))
List methods
Danh sách các phương thức có thể sử dụng
start
Khởi chạy player. Nếu tham số wait=True sẽ gọi phương thức wait_to_stared()
.
em.start(wait=True)
wait_to_started
Chờ cho quá trình khởi chạy hoàn tất. Thực chất là chờ kết nối ADB
em.wait_to_started()
is_running
Trả về True
nếu player đang chạy ngược lại False
em.is_running()
restart
Khởi chạy lại player, tham số wait
tương tự start()
em.restart(wait=True)
rename
Đổi tên player thành new_name
em.rename(new_name="New-Name-LDPlayer")
install_app
Cài đặt ứng dụng, source có thể là đường dẫn tới file .apk hoặc package name
em.install_app(source)
uninstall_app
Gỡ cài đặt ứng dụng có package name tương ứng
em.uninstall_app(package_name)
run_app
Mở dứng dụng có package name tương ứng
em.run_app(package_name)
kill_app
Dừng dứng dụng có package name tương ứng
em.kill_app(package_name)
list_packages
trả về danh sách các package đã cài đặt trên thiết bị
packages = em.list_packages()
print(packages)
set_locate
Cài đặt locate
em.set_locate(locate="locate")
update_properties
Cập nhật thông tin thiết bị, tham số prop là 1 dict
với key là tên property và value là giá trị tương ứng
em.update_properties(prop)
get_properties
Trả về 1 dict
với key là tên property và value là giá trị property
prop = em.get_properties()
print(prop)
property_setting
cài đặt thông số player, tham số là 1 EmulatorOptions
import emulator
from emulator.option import EmulatorOptions
ld = emulator.LDPlayer("path/to/ldplayer/")
options = EmulatorOptions()
options.set_resolution(width=128, height=240, dpi=120)
em = ld.emulators[0]
em.property_setting(options)
em.start()
down_cpu
em.down_cpu(rate=50)
backup
Tạo file backup player
em.backup(file_path="C:/backup.ldbk")
restore
em.restore(file_path="C:/backup.ldbk")
action
actions = {"action": "value"}
em.action(actions=actions)
scan
em.scan(file_path="C:/scan.png")
pull
Đưa file remote
từ player về PC thành local
em.pull(remote="sdcard/remote.txt", local="C:/local.txt")
push
Đưa file local
từ PC lên player thành remote
em.push(local="C:/local.txt", remote="sdcard/remote.txt")
capture
Chụp ảnh màn hình và lưu thành as_file
em.capture(as_file="path/to/save_as.png")
adb_connected
Trả về True
nếu ADB đã kết nối với player ngược lại False
em.adb_connected()
tap
Nhấn vào vị trí pos
em.tap(pos=(200, 200))
swipe
Vuốt từ vị trí _from
tới vị trí to
trong khoảng thời gian duration
millisecond.
em.swipe(_from=(100, 200), to=(500, 200), duration=100)
send_text
Gửi đoạn văn bản text
.
em.send_text(text)
send_event
Gửi event tới player
import emulator
from emulator import keys
ld = emulator.LDPlayer("path/to/ldplayer dir")
em = ld.emulators[0].start()
em.wait(5).send_event(keys.KEYCODE_CALL)
home
Nhấn vào nút home
em.home()
back
Nhấn vào nút back
em.back()
app_switcher
Nhấn vào nút app switcher
em.app_switcher()
tap_to_img
Nhấp vào hình ảnh khới với hình ảnh được cho. timeout
là thời gian chờ hình xuất hiện nếu nhỏ hơn 0 sẽ chờ vô hạn , threshold
là độ chính xác khi tìm kiếm, nằm trong khoảng từ 0 tới 1
em.tap_to_img(img_path="path/to/img", timeout=-1, threshold=0.8)
tap_to_imgs
Nhấn vào tất cả hình ảnh khớp với hình ảnh được cho. timeout
là thời gian chờ hình xuất hiện nếu nhỏ hơn 0 sẽ chờ vô hạn, threshold
là độ chính xác khi tìm kiếm, nằm trong khoảng từ 0 tới 1.
em.tap_to_imgs(img_path="path/to/img", timeout=-1, threshold=0.8)
wait_img_existed
Chờ cho tới khi hình ảnh xuất hiện trên màn hình, chờ tối đa timeout
giây, nếu timeout=0
sẽ chờ vô hạn cho tới khi có hình ảnh. threshold
là độ chính xác khi tìm kiếm nằm trong khoảng 0 tới 1.
em.wait_img_existed(img_path="path/to/img", timeout=0, threshold=0.8)
dump_xml
Lưu window_dump thành file
em.dump_xml(as_file="path/local.xml")
get_node
Trả về Node
đầu tiên trong window_dump có giá trị khớp với giá trị đã cho, nếu tìm được trả về None
import emulator
from emulator.node import By
ld = emulator.LDPlayer("path/to/ldplayer")
em = ld.emulator[0].start().wait(10)
em.get_node(By.TEXT, "node text")
get_nodes
Trả về một list
là tất cả các node trong window_dump có giá trị khới với gía trị đã cho
import emulator
from emulator.node import By
ld = emulator.LDPlayer("path/to/ldplayer")
em = ld.emulators[0].start().wait(10)
nodes = em.get_nodes(By.TEXT, "text node")
wait
Dừng chương trình trong second giây
em.wait(second)
hide
Ẩn player
em.hide()
show
Hiển thị player
em.show()
quit
Tắt player
em.quit()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file emulator-Thw-0.0.2.tar.gz
.
File metadata
- Download URL: emulator-Thw-0.0.2.tar.gz
- Upload date:
- Size: 4.0 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.25.1 requests-toolbelt/0.9.1 urllib3/1.26.3 tqdm/4.62.2 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b771e7da0521e643bf913e53e88fcc2844673eec36bd0b3dc88ed7512994146d |
|
MD5 | 7ce6a219e05d5b874c86525998cf369c |
|
BLAKE2b-256 | 8438d22f2f2b0bb7e4e262340247fb83f13516ef147d4f46ebdf05344aac45a6 |
File details
Details for the file emulator_Thw-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: emulator_Thw-0.0.2-py3-none-any.whl
- Upload date:
- Size: 4.0 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.25.1 requests-toolbelt/0.9.1 urllib3/1.26.3 tqdm/4.62.2 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8a1b14879de836ac102f4f0de4a51db1cf073c4b3115323799b10af41999857 |
|
MD5 | b6a2205d20bd2193c7e5657391e88f92 |
|
BLAKE2b-256 | 41a75d92c319e2cd5fa04346d75e07bfa413d0604751b6791db0ac86fd7c7987 |