日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python模拟通讯录的删除功能_python+uiautomator2 实现需求:从通讯录添加手机号码,若存在旧的 SOS号码,先删除再添加,若通讯录中没有号码,需先新建。...

發布時間:2025/3/21 python 47 豆豆

# 實現需求:從通訊錄添加手機號碼,若存在舊的SOS號碼,先刪除再添加,若通訊錄中沒有號碼,需先新建。

import uiautomator2 as u2

from time import sleep

import time

import random

distinct_devices = "H6ZPKR45DAB64DJB"

device = u2.connect(distinct_devices)

package = "com.njzx.shbsetting"

path = "E:\\pycharm\\run\\UiAutomator2\\F5\\SOS\\FromBookPic\\"

path_result = "E:\\pycharm\\run\\UiAutomator2\\F5\\SOS\\result\\"

now_time = time.strftime("%Y-%m-%d-%H-%M-%S")

# 啟動SOS應用

def start_app():

device.app_start(package)

sleep(1)

# 從通訊錄添加號碼并保存

def addTel_submit():

device(resourceId="com.njzx.shbsetting:id/layout_sos").click()

sleep(1)

# 判斷是否存在舊的SOS號碼,若存在先刪除再添加

count_elments = device(resourceId = "zte.shb.sossetting:id/number").count

print("已有的舊的SOS號碼個數為:"+ str(count_elments) + "。\n稍后執行刪除動作!")

if count_elments != 0:

for i in range(0,count_elments):

device(resourceId="zte.shb.sossetting:id/delete").click()

device(resourceId="zte.shb.sossetting:id/btn_set").click()

print("刪除成功!")

getFromContactors()

device.press("home")

else:

getFromContactors()

device.press("home")

# 從通訊錄選擇號碼:

list_name = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n"]

list_tel = ["1234","143536","5656565435","2344567","234455756","686778967","144354657",

"562789","90909090","6725111","6764535"]

def getFromContactors():

device(resourceId = "zte.shb.sossetting:id/add_from_contactors").click()

sleep(1)

# 判斷有沒有聯系人,如果沒有,返回到聯系人應用先新建聯系人 package = "com.android.dialer",然后添加

none_elements = device(text = "您還沒有添加任何聯系人")

dialer_package = "com.android.dialer"

if none_elements.exists:

device.app_start(dialer_package)

device(text = "通訊錄").click()# 確保在聯系人界面

sleep(1)

# 判斷列表中:姓名列表的長度和號碼列表的長度和最多能夠添加多少個SOS號碼(也就是5)的大小,然后新建聯系人

if len(list_name) >= 5 and len(list_tel)>=5 :

for i in range(0,5):

print("直接選取5個號碼")

addNameAddTel()

elif len(list_name) < 5 and len(list_tel) <= len(list_name):

for i in range(0,len(list_tel)): # len(list_tel)

print("以list_tel的長度作為全部號碼")

addNameAddTel()

elif len(list_tel) < 5 and len(list_name) <= len(list_tel):

for i in range(0,len(list_name)): # len(list_name)

print("以list_name的長度作為全部號碼")

addNameAddTel()

elif len(list_name) >5 and len(list_tel)<5:

for i in range(0,len(list_tel)): # len(list_tel)

print("以list_tel的長度作全部號碼")

addNameAddTel()

elif len(list_tel)>5 and len(list_name)<5:

for i in range(0,len(list_name)): # len(list_name)

print("以list_name的長度作為全部號碼")

addNameAddTel()

# 重新打開SOS,選擇已經新建好的號碼:

start_app()

device(resourceId="com.njzx.shbsetting:id/layout_sos").click()

sleep(1)

device(resourceId="zte.shb.sossetting:id/add_from_contactors").click()

sleep(1)

image = device.screenshot()

image.save(path + now_time + '.jpg')

sleep(1)

selectTelFromContect()

sleep(2)

image = device.screenshot()

image.save(path_result + now_time + '.jpg')

# 若存在聯系人,直接添加

else:

selectTelFromContect()

sleep(2)

image = device.screenshot()

image.save(path_result + now_time + '.jpg')

# 向聯系人中新建號碼

def addNameAddTel():

device(resourceId="com.android.dialer:id/zte_edit_contact").click()

device(text="添加聯系人").click()

sleep(1)

select_name = random.choice(list_name) # 隨機選取一個姓名

list_name.remove(select_name) # 姓名不重復

print("本次隨機選擇的姓名是:" + select_name + "。\n稍后刪除" + select_name + ",打印出剩余姓名!")

print(list_name)

device(text="姓名").click()

device(text="姓名").send_keys(select_name)

select_tel = random.choice(list_tel)

list_tel.remove(select_tel) # 號碼不重復

print("本次隨機選擇的號碼是:" + select_tel + "。\n稍后刪除" + select_tel + ",打印出剩余號碼!")

print(list_tel)

device(text="電話").click()

device(text="電話").send_keys(select_tel)

device(text="完成").click()

sleep(1)

device.press("back")

sleep(1)

sostel1 = device(resourceId = "com.android.contacts:id/cliv_name_textview",instance=0)

sostel2 = device(resourceId = "com.android.contacts:id/cliv_name_textview",instance=1)

sostel3 = device(resourceId = "com.android.contacts:id/cliv_name_textview",instance=2)

sostel4 = device(resourceId = "com.android.contacts:id/cliv_name_textview",instance=3)

sostel5 = device(resourceId = "com.android.contacts:id/cliv_name_textview",instance=4)

list_sosTel = [sostel1,sostel2,sostel3,sostel4,sostel5]

# 從聯系人中隨機選擇SOS號碼并添加

def selectTelFromContect():

for i in range(0,5):

selectFromsosTel = random.choice(list_sosTel)

selectFromsosTel.click()

list_sosTel.remove(selectFromsosTel)

print(list_sosTel)

device(text = "添加").click()

device(text = "從通訊錄中添加").click()

if __name__ == '__main__':

start_app()

addTel_submit()

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的python模拟通讯录的删除功能_python+uiautomator2 实现需求:从通讯录添加手机号码,若存在旧的 SOS号码,先删除再添加,若通讯录中没有号码,需先新建。...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。