Selenium操作隱藏的元素及問題解決方案
在工作中我們會遇到一些隱藏的元素,那么selenium就會無法操作這些元素了,例如像這樣:

我試著像以前操作一樣,寫了代碼,操作之后報錯:selenium.common.exceptions.NoSuchElementException: Message: Could not locate element with visible text: male
解決方法:
我們可以通過js來使元素可見,代碼如下:
# document.querySelectorAll("select") 選擇所有的select。
# [1] 指定這一組標(biāo)簽里的第2個。
# style.display="block"; 修改樣式的display="block" ,表示可見。
js = 'document.querySelectorAll("select")[1].style.display="block";'
driver.execute_script(js) 再舉一個例子,該例子是輸入框隱藏了;具體HTML如下:
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<title>Checkbox</title>
<script type="text/javascript" async="" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<link rel="external nofollow" rel="stylesheet" />
<script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
</head>
<title>定位演示</title>
<script>
function gettext(){
var url = document.getElementById("urlAdd").value;
window.location.href=url;
}
</script>
<body>
請輸入網(wǎng)站:<input style="display:none" type="text" id="urlAdd" />
<button οnclick="gettext()" id= "ok" >跳轉(zhuǎn)</button>
</body>
</html>python實現(xiàn)方式一:
# 1. 確定js
js = "document.getElementById('urlAdd').value = 'https://baike.baidu.com/'"
# 2. 執(zhí)行js
driver.execute_script(js)
# 點擊跳轉(zhuǎn)
driver.find_element_by_id("ok").click()
time.sleep(5)python實現(xiàn)方法二:
# 1. 確定js
js = 'document.getElementById("urlAdd").style.display="block";'
# 2. 執(zhí)行js
driver.execute_script(js)
driver.find_element_by_id("urlAdd").send_keys("https://www.baidu.com")
# 點擊跳轉(zhuǎn)
driver.find_element_by_id("ok").click()
time.sleep(5)假如面試官問我們?nèi)绾味ㄎ浑[藏元素以及如何操作?
回答:定位元素的話,直接用普通的定位方法即可,只是在操作元素上有些差異,需要用js去進行操作。
到此這篇關(guān)于Selenium操作隱藏的元素的文章就介紹到這了,更多相關(guān)Selenium操作隱藏的元素內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python利用 pytesseract快速識別提取圖片中的文字((圖片識別)
本文介紹了tesseract的python調(diào)用,也就是pytesseract庫,其中還有一些其他的內(nèi)容并沒有涉及,僅涉及到了圖片提取文字,如果你對其感興趣,可以深入探索一下,也希望能和我探討一下2022-11-11
Pycharm 創(chuàng)建 Django admin 用戶名和密碼的實例
今天小編就為大家分享一篇Pycharm 創(chuàng)建 Django admin 用戶名和密碼的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05

