技术经验分享:20220719uiautomation之二三

简介: 技术经验分享:20220719uiautomation之二三

"

参考项目:

具体uia的使用说明比较详细的介绍可以参考:

1、

# -- coding: utf-8--

import subprocess

import uiautomation as auto

import time

import pandas as pd

df = 【】

columns = 【'序号', '昵称', '备注', '标签'】 # excel的标题栏

# 点击通讯录

button = //代码效果参考:https://v.youku.com/v_show/id_XNjQwNjgzNDg5Ng==.html

wechatWindow.ButtonControl(Name='通讯录')

button.Click()

# 点击通讯录管理

administration = wechatWindow.ButtonControl(Name=""通讯录管理"")

administration.Click()

communication_administration = auto.WindowControl(Name=""通讯录管理"", ClassName=""ContactManagerWindow"")

# 将鼠标放至内容的中心,滚轮对联系人列表才能生效

communication_administration.MoveCursorToMyCenter()

list1 = communication_administration.ListControl(Name="""")

# a表示存储列表,b表示计数器

a = 【】

b = 1

flag = True

start_time = time.time()

print(""""""开始时间:{}"""""".format(start_time))

while flag:

list1 = communication_administration.ListControl(Name="""")

# nickname = list1.GetChildren()【0】.TextControl()

nickname = list1.GetChildren()【0】.GetFirstChildControl().GetFirstChildControl().GetChildren()【1】.GetChildren()【1】

beizhu = list1.GetChildren()【0】.GetFirstChildControl().GetFirstChildControl().GetChildren()【2】.ButtonControl()

//代码效果参考:https://v.youku.com/v_show/id_XNjQwNjgzNDkwOA==.html

biaoqian = list1.GetChildren()【0】.GetFirstChildControl().GetFirstChildControl().GetChildren()【3】.ButtonControl()

# print(nickname.Name)

# print(beizhu.Name)

# print(biaoqian.Name)

'''判断是不是在列表a中,如果'''

if len(a) == 0 or nickname.Name != a【-1】:

# print(nickname.Name)

# print(beizhu.Name)

# print(biaoqian.Name)

# print(""=""*50)

print(b, '', nickname.Name)

df.append(【b, nickname.Name, beizhu.Name, biaoqian.Name】)

d = pd.DataFrame(df, columns=columns)

b += 1

a.append(nickname.Name)

# 滚轮下滚

auto.WheelDown(waitTime=0.01)

# 手动实现滚轮滚动到底操作

# 空格

if auto.IsKeyPressed(auto.Keys.VK_SPACE):

print(""到底了"")

for j in list1.GetChildren()【1:】:

last_nickname = j.TextControl()

if last_nickname != a【-1】:

print(b, '', last_nickname.Name)

last_beizhu = j.GetFirstChildControl().GetFirstChildControl().GetChildren()【2】.ButtonControl()

last_biaoqian = j.GetFirstChildControl().GetFirstChildControl().GetChildren()【3】.ButtonControl()

df.append(【b, last_nickname.Name, last_beizhu.Name, last_biaoqian.Name】)

d = pd.DataFrame(df, columns=columns)

b += 1

a.append(last_nickname)

print(a)

flag = False

end_time = time.time()

sum_time = end_time - start_time

print(""""""运行时间:{}s"""""".format(sum_time))


"
image.png
相关文章
|
8月前
|
架构师 程序员
置顶两个月!《程序员如何向架构师转型》神作在Github持续霸榜
企业架构在过去十年中取得了长足的进步。随着越来越多新技术出现,充分利用这些因素来将企业架构创建得更好十分重要。通过将新技术集成到企业架构中,即使在困难时期,也能取得丰硕的成果。
|
供应链 Linux Android开发
目前该不该入坑鸿蒙
最近有一些朋友问现在该不该学习鸿蒙系统,如果不学是不是会落伍了啊?今天跟大家说说我的看法!
|
测试技术 Android开发
热饭的测开成果盘点第二十七期:安卓自动化平台
热饭的测开成果盘点第二十七期:安卓自动化平台
热饭的测开成果盘点第二十七期:安卓自动化平台
|
测试技术 iOS开发 Python
热饭的测开成果盘点第二十六期:IOS自动化平台
热饭的测开成果盘点第二十六期:IOS自动化平台
热饭的测开成果盘点第二十六期:IOS自动化平台
|
监控 安全 测试技术
热饭的测开成果盘点第二十期:安卓&appium自动化测试平台
本期介绍的是移动端app自动化测试平台,用的appium,可以支持多手机并发执行用例,切换环境等操作,用例自动分配等功能。
热饭的测开成果盘点第二十期:安卓&appium自动化测试平台
|
监控 小程序 安全
热饭的测开成果盘点第十八期:微信小程序平台
本期介绍的是一款测试微信小程序的自动化平台,功能比较简单,算是我给我带着我小徒弟(txn) 练手的第一个学习用平台。
热饭的测开成果盘点第十八期:微信小程序平台
|
移动开发 人工智能 监控
热饭的测开成果盘点第十七期:web自动化智能平台
本期介绍的是打造的一款新的架构的selenium自动化平台。它可以实现的效果是,直接在用例平台爬下来用例,然后让浏览器去自动执行。就像一个活人一样去点点点。
热饭的测开成果盘点第十七期:web自动化智能平台
|
存储 人工智能 算法
泰山众筹系统开发app(源码搭建)
即企业以互联网为依托,通过运用大数据、人工智能等先进技术手段,对商品的生产、流通与销售过程进行升级改造,进而重塑业态结构与生态圈,并对线上服务、线下体验以及现代物流进行深度融合的智能合约新模式。基于区块链营造的信息公开的环境,各服务商可以减少戒备,增加彼此合作的可能,实现区块链 智能合约系统中的每一个个体都在为整体的发展做出贡献,用户享受消费同时提供消费数据,消费数据,服务商提供优质服务的同时根据用户反馈的数据进行商品的优化提供更好的服务,从而打造一个全新的商业生态系【180-系统3831-开发9724】
|
移动开发 Dart 监控
弃坑 RN,入坑 Flutter,同程旅行架构师给了这四点理由
随着移动互联网的普及和快速发展,Android 和 iOS 成为了移动端 coder 的舞台。而传统的纯原生开发已经不能满足日益增长的业务需求。于是,APP 跨平台开发成了现在比较热门的方向。跨平台开发成本低、周期短、易于上手、不用重新设计、省时省力,种种好处让开发者们备受青睐,也让诸多跨平台开发工具趁势崛起。
343 0
弃坑 RN,入坑 Flutter,同程旅行架构师给了这四点理由
4 年 iOS 开发,自述这几年的工作感悟,希望对你有帮助!
前言: 从做 iOS 开发一开始到现在,我也已经工作了那么多年了,说一下现在我工作了这么长时间的感悟。 1,接触 作为一个 iOS 开发工程师,我之前做过 iOS 但是还做过一段安卓,都说安卓是 iOS 的基础,这个应该算是正常的。