程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

app小程序手機端Python爬蟲實戰06UiSelector文本、className定位方式

編輯:Python

作者:虛壞叔叔
博客:https://xuhss.com

早餐店不會開到晚上,想吃的人早就來了!

UiSelector文本、className定位方式

一、文本定位方式

文本定位方式,有以下四種方式

1.1 文本定位api

1.1.1 Text文本定位方式

  • text 全文本匹配
  • textContains 文本包含
  • textMatches 正則表達式
  • testStartsWith 起始文本

1.1.2 description文本選取方式

  • description全文本匹配
  • descriptionContains 文本包含
  • descriptionMatches 正則表達式
  • descriptionStartsWith 起始文本

1.2 實例演示

通過打開考研幫app,點擊密碼登錄。

1.3 如何獲取“考研幫app”功能的包的名稱

app打開設置功能後,在weditor中可以看到:

com.tal.kaoyan

1.3.1 文本實例代碼

# 包名通過weditor獲取
d.app_start(package_name="com.tal.kaoyan")
# 全文本匹配
d(text="密碼登錄").click()
# 文本包含
d(textContains="密碼").click()
# 正則表達式
d(textMatches="密碼.{2}").click()
# 起始文本
d(testStartsWith ="密碼登").click()

二、className定位方式

2.1 className選取方式

  • className 完整匹配
  • classNameMatches 正則表達式匹配

2.2 實例演示

通過搜索找到textView位於第二個FrameLayout的第6個位置,所以索引值為5,就能夠定位到這個控件

2.2.1 通過完整匹配

# 包名通過weditor獲取
d.app_start(package_name="com.tal.kaoyan")
# className
d(className="android.widget.TextView")[5].click()

這裡也可以換一種表達方式:

用instance定位,效果是一樣的

# 包名通過weditor獲取
d.app_start(package_name="com.tal.kaoyan")
# className
#d(className="android.widget.TextView")[5].click()
# 通過instance定位
d(className="android.widget.TextView", instance=5).click()

2.2.2 正則表達式匹配

# 包名通過weditor獲取
d.app_start(package_name="com.tal.kaoyan")
# className
d(classNameMatches="android\.widget\.TextView", text="密碼登錄").click()

三、總結

  • 本文介紹了Uiautomator2UiSelector文本、className定位方式。
  • 如果覺得文章對你有用處,記得 點贊收藏轉發 一波哦,博主也支持為鐵粉絲制作專屬動態壁紙哦~

往期優質文章分享

  • python3調用百度翻譯接口

  • 花 1 分鐘寫了一段爬蟲,幫實現微信搶號成功
  • C++讀取python腳本中的dictionary字典變量以及它的鍵值對

  • Qt中的套件提示no complier set in kit和no debugger,出現黃色感歎號問題解決(MSVC2017)

  • Python+selenium 自動化 - 實現自動導入、上傳外部文件(不彈出windows窗口)

優質教程分享

  • 如果感覺文章看完了不過瘾,可以來我的其他 專欄 看一下哦~
  • 比如以下幾個專欄:Python實戰微信訂餐小程序、Python量化交易實戰、C++ QT實戰類項目 和 算法學習專欄
  • 可以學習更多的關於C++/Python的相關內容哦!直接點擊下面顏色字體就可以跳轉啦!
學習路線指引(點擊解鎖)知識定位人群定位🧡 Python實戰微信訂餐小程序 🧡進階級本課程是python flask+微信小程序的完美結合,從項目搭建到騰訊雲部署上線,打造一個全棧訂餐系統。Python量化交易實戰入門級手把手帶你打造一個易擴展、更安全、效率更高的量化交易系統️ Python&C++混合編程️難度偏高分享學習Python C++混合編程知識!

資料白嫖,溫馨提示

關注下面卡片即刻獲取更多編程知識,包括各種語言學習資料,上千套PPT模板和各種游戲源碼素材等等資料。更多內容可自行查看哦!


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved