python+selenium元素定位詳解

  • 通過元素id定位
#通過元素id定位
wb.find_element_by_id('kw').send_keys('selenium')
  • 通過class_name定位
#通過class_name定位
wb.find_element_by_class_name('s_btn').click()
  • 通過標簽名定位
#通過標簽名定位
wb.find_element_by_tag_name('class="soutu-btn"').click()
  • 通過css表達式定位
    css表達式功能比較強大,想了解的可參考我的另一篇文章:selenium元素定位之CSS選擇器語法匯總

  • 通過xpath定位
    1、絕對路徑選擇
    從根節(jié)點開始,例如:/html/body/div
    2、相對路徑選擇
    用//表示,代表絕對路徑,例如://div//p
    3、根據(jù)屬性選擇
    語法:[@屬性名=‘屬性值’
    4、根據(jù)id屬性選擇
    語法://[@id='id名字']
    5、根據(jù)class屬性選擇
    語法://標簽名[@class='class名字']
    6、根據(jù)其他屬性選擇
    例如://
    [@multiple]
    7、屬性值包含字符串
    語法://[contains(@屬性值,'值')]
    8、屬性值以字符串開頭
    語法://
    [start-with(@屬性值,'值')]
    9、某類型的第N個元素
    語法://div/p[2]
    10、某類型的倒數(shù)第N個元素
    語法:
    //div/p[last()] ---代表倒數(shù)第1個元素
    //div/p[last()-1] ---代表倒數(shù)第2個元素
    11、范圍選擇
    語法://option[position()<3] ----代表選擇option類型第1個到第2個子元素
    12、組(多元素)選擇
    語法:用豎線|隔開
    例如://option/p | //div/h
    13、選擇父節(jié)點(css不具備的功能)
    語法:用/..來表示父節(jié)點
    例如://[@id='name']/.. ----表示獲取id為name的父節(jié)點
    14、兄弟節(jié)點選擇
    語法:
    后面的兄弟節(jié)點用following-sibling::
    前面的兄弟節(jié)點用 preceding-sibling::
    例如://
    [@id='name']/following-sibling::* --表示選擇id為name的后續(xù)所有兄弟節(jié)點

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容