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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

selenium---勾选框处理

發(fā)布時(shí)間:2023/12/13 综合教程 36 生活家
生活随笔 收集整理的這篇文章主要介紹了 selenium---勾选框处理 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

  在web自動(dòng)化中,會(huì)遇到一些勾選框的操作,在正常操作下,我們只要點(diǎn)擊勾選框即是勾選,再次點(diǎn)擊則取消勾選,那selenium如何操作勾選框呢? 其實(shí)和正常一樣,我們只要定位到勾選框后,就可以進(jìn)行點(diǎn)擊。

勾選框

首先我們看下什么是勾選框?勾選框在HTML中長(zhǎng)什么樣子,這樣才能方便我們進(jìn)行定位操作。。

<html>
<body>
<form >
<p>請(qǐng)選擇你關(guān)注測(cè)試-安靜了嗎?</p>
  <p><input type="checkbox" name="vehicle" value="Bike" /> 已經(jīng)關(guān)注了!/p>
  <p><input type="checkbox" name="vehicle" value="Car"/> 沒有關(guān)注!</p>
  <p><input type="checkbox" name="vehicle" value="name"/> 已經(jīng)關(guān)注,并跟著安靜學(xué)習(xí)一段時(shí)間了</p>
</form>

</body>
</html>

定位方法:

1、勾選一個(gè):通過元素定位方式選擇value值,然后進(jìn)行定位進(jìn)行點(diǎn)擊操作

2、全部勾選:定位共同參數(shù),通過find_elements的方法循環(huán)全部點(diǎn)擊

思路就是定位到想要勾選的內(nèi)容,然后直接點(diǎn)擊就完事了,這里要屬于find_elements不能直接點(diǎn)擊,因?yàn)槎ㄎ坏氖菑?fù)數(shù),selenium不知道點(diǎn)擊哪一個(gè),我們可以通過for循環(huán)進(jìn)行點(diǎn)擊

from selenium import webdriver
import time
driver = webdriver.Chrome()
path = r'E:webcheckbox.html'
driver.get(path)
# 定位全部勾選框,然后進(jìn)行循環(huán)點(diǎn)擊
t = driver.find_elements_by_xpath('//*[@type="checkbox"]')
for i in t:
    i.click()
    time.sleep(2)
# 取消定位第一個(gè)
driver.find_element_by_css_selector('input[value=Bike]').click()

判斷勾選框是否選中

勾選框,有的頁面剛進(jìn)去其實(shí)就已經(jīng)勾選了,我們可以進(jìn)行判斷,如果勾選了,我們就直接進(jìn)行下面的操作,哪么問題來了?我們?nèi)绾闻袛嘣厥欠癖还催x?這里可以理解成元素是否被選中,哪么在selenium中是不是有個(gè)判斷元素有沒有被選中的方法?is_selected()表示判斷元素有沒有被選中,如果選中打印True,沒有選中打印False

from selenium import webdriver
driver = webdriver.Chrome()
path = r'E:webcheckbox.html'
driver.get(path)
t = driver.find_element_by_css_selector('input[value=name]').click()
# 判斷是否被選中
if driver.find_element_by_css_selector('input[value=Bike]').is_selected():
    print('勾選框已經(jīng)選中')
else:
    print('勾選框沒有選中')

這里安靜判斷沒有被選中的,可想而知,結(jié)果是“勾選框沒有選中”

安靜通過小小的例子,認(rèn)識(shí)了什么是勾選框以及如何定位到勾選框和判斷勾選框是否選中的情況,最多的還是需要大家多寫多練,這樣才能孰能生巧。

安靜寫的文章如果對(duì)您有幫助,點(diǎn)個(gè)關(guān)注,持續(xù)更新。不懂的或者寫錯(cuò)的地方,可以下方進(jìn)行留言。

總結(jié)

以上是生活随笔為你收集整理的selenium---勾选框处理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。