Python自动测试之12306APP自动抢票

2019-04-14 22:02发布

import aircv as ac import uiautomator2 as u2 import time import random d=u2.connect('172.21.236.63') def run(img): while(True): d.screenshot("qp.jpg") imobj=ac.imread('C:\Users\bj\Desktop\qp\'+img+'.jpg') imsrc=ac.imread('C:\Users\bj\Desktop\qp.jpg') result=ac.find_template(imsrc,imobj,0.8) if(result!=None): print('1') print(result['result'][0],result['result'][1]) x=result['result'][0] y=result['result'][1] d.long_click(x,y,0.3) break else: print('2') d.drag(0.5,0.7,0.5,0.2,0.1) #run() def main_f(arr,date,m): d(resourceId="com.MobileTicket.launcher:id/train_dep1").click() d(description=u"杭州").click() d(resourceId="com.MobileTicket.launcher:id/train_arr1").click() d(description=u""+arr).click() d(text=u"出发日期").click() #一月份d(description=u"23").click() #二月份d(description=u"12",instance=1).click() if(m==1): d(description=u""+date).click() if(m==2): d(description=u""+date,instance=1).click() d(resourceId="com.MobileTicket.launcher:id/ticket_home_btn_search").click() time.sleep(4) def put_ticket(): try: d(description=u"硬座").click() d(description=u"选择乘客").click() d(description=u"李主龙成人430***********233X").click() d(resourceId="com.alipay.mobile.nebula:id/h5_bt_text").click() d(description=u"提交订单").click() except Exception as e: pass def buy(arr,date,m): main_f(arr,date,m) if(arr=='长沙'): ticket=['k1373','k807','z247'] if(arr=='衡阳'): ticket=['t77','k759','t81','t381','t25','k527'] for t in range(0,len(ticket)): run(ticket[t]) try: d(resourceId="com.MobileTicket.common:id/sure").click() except Exception as e: pass try: inf=d(description=u"提交订单").info print('有票哦') put_ticket() except Exception as e1: print('没有票哦') d.press('back') def qiang(): buy('长沙',"1",2)#第二个参数代表日期,第三个参数代表月份 buy('衡阳',"1",2)#第二个参数代表日期,第三个参数代表月份 buy('长沙',"2",2)#第二个参数代表日期,第三个参数代表月份 buy('衡阳',"2",2)#第二个参数代表日期,第三个参数代表月份 buy('长沙',"3",2)#第二个参数代表日期,第三个参数代表月份 buy('衡阳',"3",2)#第二个参数代表日期,第三个参数代表月份 buy('长沙',"4",2)#第二个参数代表日期,第三个参数代表月份 buy('衡阳',"4",2)#第二个参数代表日期,第三个参数代表月份 qiang()