优化代码结构增加截图

main
RogerWork 2 months ago
parent 8d75796a7e
commit 0609d18a8b
  1. 0
      android_appium/jd_client.py
  2. 4
      android_appium/main.py
  3. 10
      android_uia/command.txt
  4. 26
      android_uia/jd_uia.py
  5. 4
      android_uia/main_uia.py
  6. 0
      android_uia/wx.py
  7. 0
      browser_playwright/get_jd_timestamp.py
  8. 4
      browser_playwright/jd_code.py
  9. 13
      browser_playwright/jd_playwright.py
  10. 10
      test.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 from jd_client import JdClient
import multiprocessing, threading import threading
device_list = ['127.0.0.1:16416', device_list = ['127.0.0.1:16416',
'127.0.0.1:16448'] '127.0.0.1:16448']

@ -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

@ -1,23 +1,28 @@
import uiautomator2 import uiautomator2
import threading import threading
from time import sleep
class JdClient: class JdClient:
def __init__(self, device): def __init__(self, device):
self.device = device self.device = device
self.dev = uiautomator2.connect(device) self.dev = uiautomator2.connect(device)
self.jd_pkg = 'com.jingdong.app.mall'
def close_app(self): def close_app(self):
self.dev.app_stop('com.jingdong.app.mall') self.dev.app_stop(self.jd_pkg)
def set_clipboard(self, text): def set_clipboard(self, text):
self.dev.set_clipboard(text) self.dev.set_clipboard(text)
def open_app(self): 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): def open_and_click(self):
self.dev.app_start('com.jingdong.app.mall') self.dev.app_start(self.jd_pkg)
n = 30 n = 30
while n > 0: while n > 0:
@ -50,11 +55,18 @@ class JdClient:
# else: # else:
# self.dev.implicitly_wait(1) # self.dev.implicitly_wait(1)
# # print('等待1秒') # # print('等待1秒')
n = 10 n = 1
while n > 0: while n < 50:
self.dev.click(531, 1323) self.dev.click(531, 1323)
self.dev.implicitly_wait(1) self.dev.screenshot(f'{self.device.replace(":", "_")}_{str(n)}.png')
n -= 1 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): def full_steps(self, text):
self.set_clipboard(text) self.set_clipboard(text)

@ -7,7 +7,7 @@ import multiprocessing, threading
# NUC14 # NUC14
device_list = [ 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:16448', # 2
'127.0.0.1:16480', # 3 '127.0.0.1:16480', # 3
'127.0.0.1:16512', # 4 '127.0.0.1:16512', # 4
@ -32,7 +32,7 @@ jd_client_list = []
for dev in device_list: for dev in device_list:
jd_client = JdClient(dev) jd_client = JdClient(dev)
jd_client_list.append(jd_client) 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() t.start()
msg = listen_msg(listen_list, '玩具乐器五折券') msg = listen_msg(listen_list, '玩具乐器五折券')

@ -2,8 +2,8 @@ import re
from playwright.sync_api import Playwright, sync_playwright, expect from playwright.sync_api import Playwright, sync_playwright, expect
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() context = browser.new_context()
page = context.new_page() page = context.new_page()
page.goto("https://www.jd.com/") page.goto("https://www.jd.com/")

@ -1,10 +1,9 @@
import re from playwright.sync_api import Playwright, sync_playwright
from playwright.sync_api import Playwright, sync_playwright, expect
import time, datetime 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') 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) friday = today + datetime.timedelta( days=(4-today.weekday())%7)
print(friday) print(friday)
@ -12,7 +11,7 @@ def get_firday():
# 需要每次定义 # 需要每次定义
target: str = get_firday() target: str = get_friday()
# 19920002680 # 19920002680
user = {'mobile': '19920002680', 'password': 'Sxzgx1209'} 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) 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" 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() context = browser.new_context()
page = context.new_page() page = context.new_page()
page.goto("https://www.jd.com/") page.goto("https://www.jd.com/")

@ -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())
Loading…
Cancel
Save