1. 程式人生 > 其它 >039、selenium 常見面試題 03、隱藏元素定位和操作,(方法1:滑鼠懸停,先讓它顯示 方法2:js可以直接點選隱藏元素)

039、selenium 常見面試題 03、隱藏元素定位和操作,(方法1:滑鼠懸停,先讓它顯示 方法2:js可以直接點選隱藏元素)

一、 隱藏元素定位和操作

    如何定位隱藏元素?js操作隱藏元素?

    隱藏元素如何操作呢? 方法1:滑鼠懸停,先讓它顯示 ; 方法2:js可以直接點選隱藏元素

什麼是隱藏元素?3種情況 :

隱藏元素定位示例如下:

隱藏元素定位 案例:

程式碼如下:

# -*- coding:utf-8 -*-
# Author:  Sky
# Email:   [email protected]
# Time:    2021/8/21 18:08
# Project: day01
# Module:  ch_10.py
# Environment: Python3.8.6 , Selenium3 環境 ( 3.141.0 版本)
# Environment: Chrome ( 92.0.4515.131, 正式版本) + chromedriver(92.0.4515.107版本) from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains import time driver = webdriver.Chrome() driver.maximize_window() driver.get("http://49.235.92.12:8200/users/login/") time.sleep(2) # 先登陸
driver.find_element_by_id("username").send_keys("[email protected]") driver.find_element_by_id("password_l").send_keys("123456") driver.find_element_by_id("jsLoginBtn").click() # 隱藏元素操作,方法一: # 滑鼠懸停,先讓它顯示 mouse = driver.find_element_by_class_name("personal") ActionChains(driver).move_to_element(mouse).perform() time.sleep(3) # 隱藏元素 可以獲取元素屬性,但是text屬性為'' p = driver.find_element_by_class_name("personcenter") print(p.text) print(p.tag_name) print(p.get_attribute("href")) time.sleep(3
) driver.quit()

執行結果如下:

D:\SkyWorkSpace\WorkSpace\Web_AutoTest\Temp\day01\venv\Scripts\python.exe 
D:/SkyWorkSpace/WorkSpace/Web_AutoTest/Temp/day01/ch_003/ch_10.py 進入個人中心 a http://49.235.92.12:8200/users/userinfo/ Process finished with exit code 0

隱藏元素如何操作呢?

方法1:前面講的滑鼠懸停,先讓它顯示

方法2:js可以直接點選隱藏元素

# -*- coding:utf-8 -*-
# Author:  Sky
# Email:   [email protected]
# Time:    2021/8/21 18:08
# Project: day01
# Module:  ch_10.py
# Environment: Python3.8.6 , Selenium3 環境 ( 3.141.0 版本)
# Environment: Chrome ( 92.0.4515.131, 正式版本) + chromedriver(92.0.4515.107版本)

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import time
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("http://49.235.92.12:8200/users/login/")
time.sleep(2)

# 先登陸
driver.find_element_by_id("username").send_keys("[email protected]")
driver.find_element_by_id("password_l").send_keys("123456")
driver.find_element_by_id("jsLoginBtn").click()

# # 隱藏元素操作,方法一:
# # 滑鼠懸停,先讓它顯示
# mouse = driver.find_element_by_class_name("personal")
# ActionChains(driver).move_to_element(mouse).perform()
# time.sleep(3)

# # 隱藏元素 可以獲取元素屬性,但是text屬性為''
# p = driver.find_element_by_class_name("personcenter")
# print(p.text)
# print(p.tag_name)
# print(p.get_attribute("href"))
# time.sleep(3)


# # 隱藏元素操作,方法二:
# js 點選隱藏元素
js = 'document.getElementsByClassName("personcenter")[0].click()'
driver.execute_script(js)

time.sleep(3)
driver.quit()