diff --git a/jd_client.py b/android_appium/jd_client.py similarity index 100% rename from jd_client.py rename to android_appium/jd_client.py diff --git a/main.py b/android_appium/main.py similarity index 91% rename from main.py rename to android_appium/main.py index 412828c..45d8fbf 100644 --- a/main.py +++ b/android_appium/main.py @@ -1,6 +1,6 @@ -from wx import get_user_message, listen_msg +from android_uia.wx import listen_msg from jd_client import JdClient -import multiprocessing, threading +import threading device_list = ['127.0.0.1:16416', '127.0.0.1:16448'] diff --git a/android_uia/command.txt b/android_uia/command.txt new file mode 100644 index 0000000..f883d34 --- /dev/null +++ b/android_uia/command.txt @@ -0,0 +1,10 @@ +# uiautodev +# uiauto.dev + +https://uiauto.devsleep.com/android/127.0.0.1:16416 +https://uiauto.devsleep.com/android/127.0.0.1:16448 +https://uiauto.devsleep.com/android/127.0.0.1:16480 +https://uiauto.devsleep.com/android/127.0.0.1:16512 +https://uiauto.devsleep.com/android/127.0.0.1:16608 + +# weditor \ No newline at end of file diff --git a/jd_uia.py b/android_uia/jd_uia.py similarity index 81% rename from jd_uia.py rename to android_uia/jd_uia.py index 7e1fca4..51a1a7e 100644 --- a/jd_uia.py +++ b/android_uia/jd_uia.py @@ -1,23 +1,28 @@ import uiautomator2 import threading +from time import sleep class JdClient: def __init__(self, device): self.device = device self.dev = uiautomator2.connect(device) + self.jd_pkg = 'com.jingdong.app.mall' def close_app(self): - self.dev.app_stop('com.jingdong.app.mall') + self.dev.app_stop(self.jd_pkg) def set_clipboard(self, text): self.dev.set_clipboard(text) def open_app(self): - self.dev.app_start('com.jingdong.app.mall') + self.dev.app_start(self.jd_pkg) + + def set_to_background(self): + self.dev.press('home') def open_and_click(self): - self.dev.app_start('com.jingdong.app.mall') + self.dev.app_start(self.jd_pkg) n = 30 while n > 0: @@ -50,11 +55,18 @@ class JdClient: # else: # self.dev.implicitly_wait(1) # # print('等待1秒') - n = 10 - while n > 0: + n = 1 + while n < 50: self.dev.click(531, 1323) - self.dev.implicitly_wait(1) - n -= 1 + self.dev.screenshot(f'{self.device.replace(":", "_")}_{str(n)}.png') + sleep(1) + # self.dev.implicitly_wait(1) + n += 1 + + def prepare_steps(self): + self.close_app() + self.open_app() + self.set_to_background() def full_steps(self, text): self.set_clipboard(text) diff --git a/main_uia.py b/android_uia/main_uia.py similarity index 88% rename from main_uia.py rename to android_uia/main_uia.py index b5fd184..a7079d5 100644 --- a/main_uia.py +++ b/android_uia/main_uia.py @@ -7,7 +7,7 @@ import multiprocessing, threading # NUC14 device_list = [ - '127.0.0.1:16416', # 1 + '127.0.0.1:16416', # 1 19920002680 '127.0.0.1:16448', # 2 '127.0.0.1:16480', # 3 '127.0.0.1:16512', # 4 @@ -32,7 +32,7 @@ jd_client_list = [] for dev in device_list: jd_client = JdClient(dev) jd_client_list.append(jd_client) - t = threading.Thread(target=jd_client.close_app, args=()) + t = threading.Thread(target=jd_client.prepare_steps, args=()) t.start() msg = listen_msg(listen_list, '玩具乐器五折券') diff --git a/wx.py b/android_uia/wx.py similarity index 100% rename from wx.py rename to android_uia/wx.py diff --git a/get_jd_timestamp.py b/browser_playwright/get_jd_timestamp.py similarity index 100% rename from get_jd_timestamp.py rename to browser_playwright/get_jd_timestamp.py diff --git a/jd_code.py b/browser_playwright/jd_code.py similarity index 91% rename from jd_code.py rename to browser_playwright/jd_code.py index 930d961..d27ea46 100644 --- a/jd_code.py +++ b/browser_playwright/jd_code.py @@ -2,8 +2,8 @@ import re from playwright.sync_api import Playwright, sync_playwright, expect -def run(playwright: Playwright) -> None: - browser = playwright.chromium.launch(headless=False) +def run(_playwright: Playwright) -> None: + browser = _playwright.chromium.launch(headless=False) context = browser.new_context() page = context.new_page() page.goto("https://www.jd.com/") diff --git a/jd_playwright.py b/browser_playwright/jd_playwright.py similarity index 88% rename from jd_playwright.py rename to browser_playwright/jd_playwright.py index 32b35c4..5b7d37c 100644 --- a/jd_playwright.py +++ b/browser_playwright/jd_playwright.py @@ -1,10 +1,9 @@ -import re -from playwright.sync_api import Playwright, sync_playwright, expect +from playwright.sync_api import Playwright, sync_playwright import time, datetime -from get_jd_timestamp import jd_timer +from browser_playwright.get_jd_timestamp import jd_timer -def get_firday(): +def get_friday(): today = datetime.datetime.strptime(datetime.datetime.strftime(datetime.date.today(), '%Y-%m-%d') + ' 20:00:00', '%Y-%m-%d %H:%M:%S') friday = today + datetime.timedelta( days=(4-today.weekday())%7) print(friday) @@ -12,7 +11,7 @@ def get_firday(): # 需要每次定义 -target: str = get_firday() +target: str = get_friday() # 19920002680 user = {'mobile': '19920002680', 'password': 'Sxzgx1209'} @@ -22,9 +21,9 @@ user = {'mobile': '19920002680', 'password': 'Sxzgx1209'} target_timestamp = int(time.mktime(time.strptime(target, '%Y-%m-%d %H:%M:%S'))*1000) AC_URL = f"https://h5static.m.jd.com/mall/active/xXzWGzxuJ6HRksjXms2x3cQsh25/index.html?utm_term=Wxfriends&utm_user=plusmember&utm_source=iosapp&utm_campaign=t_335139774&utm_medium=appshare&_ts={str(target_timestamp)}&ad_od=share&gxd=RnAowmYKPGXfnp4Sq4B_W578vOMp4E7JgUugKDcomXTOIlSPI-BCnvuytD0G7kc&gx=RnAomDgLPTTeyp5Z_sA9" -def run(playwright: Playwright) -> None: +def run(_playwright: Playwright) -> None: - browser = playwright.chromium.launch(headless=False) + browser = _playwright.chromium.launch(headless=False) context = browser.new_context() page = context.new_page() page.goto("https://www.jd.com/") diff --git a/test.py b/test.py deleted file mode 100644 index 1db254e..0000000 --- a/test.py +++ /dev/null @@ -1,10 +0,0 @@ -import datetime - -def get_firday(): - today = datetime.datetime.strptime(datetime.datetime.strftime(datetime.date.today(), '%Y-%m-%d') + ' 20:00:00', '%Y-%m-%d %H:%M:%S') - print(today) - friday = today + datetime.timedelta( days=(4-today.weekday())%7) - return friday - -if __name__ == '__main__': - print(get_firday()) \ No newline at end of file