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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Selenium常用的8大元素定位方法

發布時間:2025/3/20 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Selenium常用的8大元素定位方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.元素定位方法的分類(調用方式):

直接調用型(推薦方式)

driver.find_element_by_xxx(value)

使用By類型(需要導入By)

from selenium.webdriver.common.by import By driver.find_element(By.xxx,value)

2.元素定位方法的分類(按定位方式):

3.八種定位方式的示例:

driver.find_element_by_xpath(value)driver.find_element_by_css_selector(value)driver.find_element_by_id(value)driver.find_element_by_name(value)driver.find_element_by_class_name(value)driver.find_element_by_tag_name(value)driver.find_element_by_link_text(value)driver.find_element_by_partial_link_text(value)

1.通過id定位

driver.find_element_by_id(value)

從上面定位到的搜索框屬性中,有個id="kw"的屬性,我們可以通過這個id定位到這個搜索框


2.通過name定位

driver.find_element_by_name(value)

從上面定位到的搜索框屬性中,有個name="wd"的屬性,我們可以通過這個name定位到這個搜索框


3.通過 class name定位

driver.find_element_by_class_name(value)

從上面定位到的搜索框屬性中,有個class="s_ipt"的屬性,我們可以通過這個class定位到這個搜索框


4.通過tag定位

driver.find_element_by_tag_name(value)

如果懂HTML知識,我們就知道HTML是通過tag來定義功能的,比如input是輸入,table是表格,等等…。每個元素其實就是一個tag,一個tag往往用來定義一類功能,我們查看百度首頁的html代碼,可以看到有很多div,input,a等tag,所以很難通過tag去區分不同的元素?;旧显谖覀児ぷ髦杏貌坏竭@種定義方法,僅了解就行


5.通過link text定位

driver.find_element_by_link_text(value)

此種方法是專門用來定位文本鏈接的,比如百度首頁右上角有“新聞”,“hao123”,“地圖”等鏈接



6.通過partial_link定位

driver.find_element_by_partial_link_text(value)

有時候一個超鏈接的文本很長很長,我們如果全部輸入,既麻煩,又顯得代碼很不美觀,這時候我們就可以只截取一部分字符串,用這種方法模糊匹配了。

我們用這種方法來定位百度首頁的“hao123”超鏈接


7.通過xpath定位

driver.find_element_by_xpath(value)

前面介紹的幾種定位方法都是在理想狀態下,有一定使用范圍的,那就是:在當前頁面中,每個元素都有一個唯一的id或name或class或超鏈接文本的屬性,那么我們就可以通過這個唯一的屬性值來定位他們。

但是在實際工作中并非有這么美好,有時候我們要定位的元素并沒有id,name,class屬性,或者多個元素的這些屬性值都相同,又或者刷新頁面,這些屬性值都會變化。那么這個時候我們就只能通過xpath或者CSS來定位了。

xpath定位百度搜索框



8.通過css定位

driver.find_element_by_css_selector(value)

這種方法相對xpath要簡潔些,定位速度也要快些,但是學習起來會比較難理解,這里只做下簡單的介紹。

CSS定位百度搜索框


也可以這樣操作

總結

以上是生活随笔為你收集整理的Selenium常用的8大元素定位方法的全部內容,希望文章能夠幫你解決所遇到的問題。

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