电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Python+Appium實現自動搶微信紅包

瀏覽:4日期:2022-06-18 17:19:57
目錄環境準備實現思路code環境準備 appium環境 安卓手機 usb數據線 python環境實現思路

我們收到紅包和消息都是自動置頂到第一個,于是我們打開第一個判斷是否有紅包,沒有則隱藏此窗口。如果有則判斷紅包是否可以領取,如果有則領取紅包,否則刪除此紅包(不然會影響后面的判斷)然后再進行循環運行和判斷。

Python+Appium實現自動搶微信紅包

code

首先看一下配置信息,因為我使用得是真機小米9安卓10的系統,代碼實現如下具體的信息填寫請根據自己的真實情況修改:

desired_caps = { 'platformName': 'Android', # 系統 'platformVersion': '10.0', # 系統版本號 'deviceName': 'b68548ed', # 設備名 'appPackage': 'com.tencent.mm', # 包名 'appActivity': '.ui.LauncherUI', # app 啟動時主 Activity ’unicodeKeyboard’: True, # 使用自帶輸入法 ’noReset’: True # 保留 session 信息,可以避免重新登錄}

因為點擊紅包后需要判斷點擊后的紅包是否被領取,即是否有開字,如圖所示:

Python+Appium實現自動搶微信紅包

所以我們定義一個判斷元素是否存在的方法,代碼實現如下:

def is_element_exist(driver, by, value): try:driver.find_element(by=by, value=value) except Exception as e:return False else:return True

因為紅包無論是被自己領取還是被他人領取,之后都要刪除領取后的紅包記錄,所以我們再來定義一個刪除已領取紅包的方法,代碼實現如下:

def del_red_envelope(wait, driver): # 長按領取過的紅包 r8 = wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/ahs'))) TouchAction(driver).long_press(r8).perform() time.sleep(1) # 點擊長按后顯示的刪除 wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/dt5'))).click() # 點擊彈出框的刪除選項 wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/ffp'))).click()

Python+Appium實現自動搶微信紅包

同時有可能第一個是公眾號推送的消息,這樣會導致無法判斷,所以我們判斷只要進去的里面沒有紅包就把它隱藏掉,然后等新的紅包發生過來。

# 刪除第一個聊天框def del_red_public(wait, driver): # 長按第一個聊天框 r8 = wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/fzg'))) TouchAction(driver).long_press(r8).perform() time.sleep(1) # 點擊長按后顯示的刪除 wait.until(EC.element_to_be_clickable((By.XPATH, '//android.widget.TextView[@text=’不顯示該聊天’]'))).click() # 點擊彈出框的刪除選項 wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/ffp'))).click()

完整代碼如下:

from appium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom appium.webdriver.common.touch_action import TouchActionfrom selenium.webdriver.support import expected_conditions as ECimport timedesired_caps = { 'platformName': 'Android', # 系統 'platformVersion': '10.0', # 系統版本號 'deviceName': 'b68548ed', # 設備名 'appPackage': 'com.tencent.mm', # 包名 'appActivity': '.ui.LauncherUI', # app 啟動時主 Activity ’unicodeKeyboard’: True, # 使用自帶輸入法 ’noReset’: True # 保留 session 信息,可以避免重新登錄}# 判斷元素是否存在def is_element_exist(driver, by, value): try:driver.find_element(by=by, value=value) except Exception as e:return False else:return True# 刪除領取后的紅包記錄def del_red_envelope(wait, driver): # 長按領取過的紅包 r8 = wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/ahs'))) TouchAction(driver).long_press(r8).perform() time.sleep(1) # 點擊長按后顯示的刪除 wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/dt5'))).click() # 點擊彈出框的刪除選項 wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/ffp'))).click()# 刪除第一個聊天框def del_red_public(wait, driver): # 長按第一個聊天框 r8 = wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/fzg'))) TouchAction(driver).long_press(r8).perform() time.sleep(1) # 點擊長按后顯示的刪除 wait.until(EC.element_to_be_clickable((By.XPATH, '//android.widget.TextView[@text=’不顯示該聊天’]'))).click() # 點擊彈出框的刪除選項 wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/ffp'))).click()if __name__ == ’__main__’: driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) # 設置等待 wait = WebDriverWait(driver, 500) while True: # 進入第一個聊天窗口g73 = wait.until(EC.element_to_be_clickable( (By.ID, 'com.tencent.mm:id/fzg')))g73.click()print('進入了第一個聊天窗口')# 判斷聊天窗是否是公眾號is_weichat = is_element_exist(driver, 'id', 'com.tencent.mm:id/u1')if is_weichat == True:# while True: # 有紅包則點擊 wait.until(EC.element_to_be_clickable((By.ID, 'com.tencent.mm:id/u1'))).click() print('點擊了紅包') # 判斷紅包是否被領取 is_open = is_element_exist(driver, 'id', 'com.tencent.mm:id/f4f') print('紅包是否被領取:', is_open) if is_open == True:# 紅包未被領取,點擊開紅包wait.until(EC.element_to_be_clickable( (By.ID, 'com.tencent.mm:id/f4f'))).click()print(’已經領取紅包’)# 返回群聊driver.keyevent(4)# 刪除領取過的紅包記錄del_red_envelope(wait, driver)print(’···刪除已經領取的紅包,等待新的紅包’)driver.keyevent(4) else:# 返回群聊driver.keyevent(4)# 刪除領取過的紅包記錄del_red_envelope(wait, driver)print(’···刪除無法領取的紅包,等待新的紅包’)driver.keyevent(4)else: print(’沒有紅包則隱藏此聊天框’) # 返回群聊 driver.keyevent(4) # 刪除第一個公眾號窗口 del_red_public(wait, driver) print(’隱藏了第一個聊天框’)

以上就是Python+Appium實現自動搶微信紅包的詳細內容,更多關于Python 搶微信紅包的資料請關注好吧啦網其它相關文章!

標簽: 微信 Python
相關文章:
主站蜘蛛池模板: 成都LED显示屏丨室内户外全彩led屏厂家方案报价_四川诺显科技 | 强效碱性清洗剂-实验室中性清洗剂-食品级高纯氮气发生器-上海润榕科学器材有限公司 | 搜活动房网—活动房_集装箱活动房_集成房屋_活动房屋 | 仿古建筑设计-仿古建筑施工-仿古建筑公司-汉匠古建筑设计院 | 福州甲醛检测-福建室内空气检测_环境检测_水质检测-福建中凯检测技术有限公司 | 注塑机-压铸机-塑料注塑机-卧式注塑机-高速注塑机-单缸注塑机厂家-广东联升精密智能装备科技有限公司 | 球形钽粉_球形钨粉_纳米粉末_难熔金属粉末-广东银纳官网 | 哈希PC1R1A,哈希CA9300,哈希SC4500-上海鑫嵩实业有限公司 | 传递窗_超净|洁净工作台_高效过滤器-传递窗厂家广州梓净公司 | 北京森语科技有限公司-模型制作专家-展览展示-沙盘模型设计制作-多媒体模型软硬件开发-三维地理信息交互沙盘 | 集装箱展厅-住人集装箱住宿|建筑|房屋|集装箱售楼处-山东锐嘉科技工程有限公司 | 农业仪器网 - 中国自动化农业仪器信息交流平台| 江门流水线|江门工作台|江门市伟涛行工业设备有限公司 | 新型锤式破碎机_新型圆锥式_新型颚式破碎机_反击式打沙机_锤式制砂机_青州建源机械 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 南京展台搭建-南京展会设计-南京展览设计公司-南京展厅展示设计-南京汇雅展览工程有限公司 | 智能风向风速仪,风速告警仪,数字温湿仪,综合气象仪(气象五要素)-上海风云气象仪器有限公司 | 【灵硕展览集团】展台展会设计_展览会展台搭建_展览展示设计一站式服务公司 | 多功能干燥机,过滤洗涤干燥三合一设备-无锡市张华医药设备有限公司 | 天津试验仪器-电液伺服万能材料试验机,恒温恒湿标准养护箱,水泥恒应力压力试验机-天津鑫高伟业科技有限公司 | 连续密炼机_双转子连续密炼机_连续式密炼机-南京永睿机械制造有限公司 | 气动隔膜阀_气动隔膜阀厂家_卫生级隔膜阀价格_浙江浙控阀门有限公司 | 探伤仪,漆膜厚度测试仪,轮胎花纹深度尺厂家-淄博创宇电子 | 彩信群发_群发彩信软件_视频短信营销平台-达信通 | 层流手术室净化装修-检验科ICU改造施工-华锐净化工程-特殊科室建设厂家 | 多功能三相相位伏安表-变压器短路阻抗测试仪-上海妙定电气 | 浙江筋膜枪-按摩仪厂家-制造商-肩颈按摩仪哪家好-温州市合喜电子科技有限公司 | 浙江浩盛阀门有限公司| 铸铝门厂家,别墅大门庭院大门,别墅铸铝门铜门[十大品牌厂家]军强门业 | 沧州友城管业有限公司-内外涂塑钢管-大口径螺旋钢管-涂塑螺旋管-保温钢管生产厂家 | 户外健身路径_小区健身器材_室外健身器材厂家_价格-浩然体育 | 强效碱性清洗剂-实验室中性清洗剂-食品级高纯氮气发生器-上海润榕科学器材有限公司 | 同步带轮_同步带_同步轮_iHF合发齿轮厂家-深圳市合发齿轮机械有限公司 | 北京银联移动POS机办理_收银POS机_智能pos机_刷卡机_收银系统_个人POS机-谷骐科技【官网】 | 伺服电机维修、驱动器维修「安川|三菱|松下」伺服维修公司-深圳华创益 | 长江船运_国内海运_内贸船运_大件海运|运输_船舶运输价格_钢材船运_内河运输_风电甲板船_游艇运输_航运货代电话_上海交航船运 | 镀锌角钢_槽钢_扁钢_圆钢_方矩管厂家_镀锌花纹板-海邦钢铁(天津)有限公司 | 喷码机,激光喷码打码机,鸡蛋打码机,手持打码机,自动喷码机,一物一码防伪溯源-恒欣瑞达有限公司 | 双能x射线骨密度检测仪_dxa骨密度仪_双能x线骨密度仪_品牌厂家【品源医疗】 | 电脑知识|软件|系统|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网 | 中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折! |