中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python?selenium定位元素的方式有哪些

發布時間:2022-08-29 11:34:32 來源:億速云 閱讀:136 作者:iii 欄目:開發技術

這篇文章主要介紹了Python selenium定位元素的方式有哪些的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Python selenium定位元素的方式有哪些文章都會有所收獲,下面我們一起來看看吧。

前言

八種定位方式:

id,name,class name,tag name,link text,partial link text,xpath,css selector。其中id,name,class name,tag name是根據元素的標簽或元素的屬性來進行定位;link text,partial link text是根據超鏈接的文本來進行定位;xpath為元素路徑定位;css為選擇器定位(樣式定位)。

1:id定位

說明:id定位就是通過元素的id屬性來定位元素;
前提:元素有id屬性
id定位方法:find_element_by_id()
示例:打開百度搜索頁面,通過id定位,輸入搜索關鍵字

from selenium import webdriver
import time

# 打開chrome瀏覽器
driver = webdriver.Chrome()
# 打開百度搜索頁面
driver.get('https://www.baidu.com')
# 通過id定位
driver.find_element_by_id('kw').send_keys('python')
# 強制等待2秒查看效果
time.sleep(2)
# 關閉瀏覽器
driver.quit()

2:name定位

說明:HTML規定name屬性來指定元素名稱,name的屬性值在當前文檔中可以不是唯一的,name定位就是根據name屬性來定位。
前提:元素有name屬性
name定位方法:find_element_by_name()
示例:打開百度搜索頁面,通過name定位,輸入搜索關鍵字

from selenium import webdriver
import time

# 打開chrome瀏覽器
driver = webdriver.Chrome()
# 打開百度搜索頁面
driver.get('https://www.baidu.com')
# 通過name定位
driver.find_element_by_name('wd').send_keys('python')
# 強制等待2秒查看效果
time.sleep(2)
# 關閉瀏覽器
driver.quit()

3:class_name定位

說明:HTML規定class來指定元素的類名,class定位就是根據class屬性來定位。
前提:元素有class屬性
class_name定位方法:find_element_by_class_name()
示例:打開百度搜索頁面,通過class_name定位,輸入搜索關鍵字

from selenium import webdriver
import time

# 打開chrome瀏覽器
driver = webdriver.Chrome()
# 打開百度搜索頁面
driver.get('https://www.baidu.com')
# 通過class_name定位
driver.find_element_by_class_name('s_ipt').send_keys('python')
# 強制等待2秒查看效果
time.sleep(2)
# 關閉瀏覽器
driver.quit()

4:tag_name定位

說明:HTML本質就是由不同的tag(標簽)組成,而每個tag都是指同一類,所以tag定位效率低,一般不建議使用;tag_name定位就是通過標簽名來定位。
tag_name定位方法:find_element_by_tag_name()

5:link_text定位

說明:link_text定位與前面4個定位有所不同,它專門用來定位超鏈接文本(文本值)
前提:定位的元素是鏈接標簽(a標簽)
link_text定位方法:find_element_by_link_text()
示例:打開百度首頁,通過link_text定位到hao123按鈕,并進行點擊操作

from selenium import webdriver
import time

# 打開chrome瀏覽器
driver = webdriver.Chrome()
# 打開百度搜索頁面
driver.get('https://www.baidu.com')
# 通過link_text定位
driver.find_element_by_link_text('hao123').click()
# 強制等待2秒查看效果
time.sleep(2)
# 關閉瀏覽器
driver.quit()

6:partial_link_text定位

說明:partial_link_text定位是對link_text定位的補充,partial_link_text為模糊匹配;link_text為精確匹配。
前提:定位的元素是鏈接標簽(a標簽)
partial_link_text定位方法:find_element_by_partial_link_text()
通過傳入a標簽局部文本或全部文本來定位元素,要求輸入的文本能夠唯一找到這個元素
示例:打開百度首頁,通過partial_link_text定位到新聞,并進行點擊操作

from selenium import webdriver
import time

# 打開chrome瀏覽器
driver = webdriver.Chrome()
# 打開百度搜索頁面
driver.get('https://www.baidu.com')
# 通過partial_link_text定位
driver.find_element_by_partial_link_text('新').click()
# 強制等待2秒查看效果
time.sleep(2)
# 關閉瀏覽器
driver.quit()

7:xpath定位

xpath概述:

  • 1、xpath即為xml path的簡稱,它是一種用來確定XML文檔中某部分位置的語言。

  • 2、HTML可以看做是XML的一種實現,所以selenium用戶可以使用這種強大的語言在web應用中來定位元素。

  • 3、xpath為強大的語言,是因為它有非常靈活的定位策略。

xpath定位策略(方式):

  • 1、路徑定位–絕對路徑、相對路徑;

  • 2、利用元素屬性定位;

  • 3、層級與屬性結合定位;

  • 4、屬性與邏輯定位結合。

xpath定位方法:find_element_by_xpath()

8:css定位

css概述:

  • 1、css(Cascading Style Sheets)是一種語言,它用來描述HTML和XML的元素顯示樣式。

  • 2、css語言中有css選擇器,在selenium中也可以使用這種選擇器來進行元素定位。

  • 3、css定位方式比xpath快,而且css的語法也非常強大,所以非常推薦這種方式定位。

css定位策略(方式):

  • 1、id選擇器

  • 2、class選擇器

  • 3、元素選擇器

  • 4、屬性選擇器

  • 5、層級選擇器

css定位方法:find_element_by_css_selector()

關于“Python selenium定位元素的方式有哪些”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“Python selenium定位元素的方式有哪些”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

海宁市| 桂东县| 谷城县| 隆化县| 石城县| 长子县| 张家口市| 米泉市| 璧山县| 宾阳县| 乐业县| 鱼台县| 定安县| 张家港市| 化德县| 杂多县| 旌德县| 吉木萨尔县| 合水县| 青田县| 上蔡县| 拉孜县| 绥阳县| 桦甸市| 上杭县| 长治县| 花莲市| 澄城县| 湘潭县| 富民县| 阳东县| 克东县| 游戏| 林周县| 波密县| 新营市| 昆明市| 杨浦区| 区。| 抚州市| 北辰区|