簡體   English   中英

如何選中所有復選框

[英]How to Check all checkboxes

我需要使用 python 3.8 和 chromedrive 選擇網頁中的所有復選框。

這個 function 在 javascript 中工作,我想要在 python 中使用相同的代碼

< script type = "text/javascript" >
    function selects() {
        var ele = document.getElementsByName('chk');
        for (var i = 0; i < ele.length; i++) {
            if (ele[i].type == 'checkbox')
                ele[i].checked = true;
        }
    }

您可以將任何 JS 代碼傳遞給 selenium driver ,例如:

script = '''
var ele = document.getElementsByName('chk');
for (var i = 0; i < ele.length; i++) {
    if (ele[i].type == 'checkbox')
        ele[i].checked = true;
}'''

diver.get("https://somedomain.com/")
driver.execute_script(script)

謝謝 william wu,你的回答很有幫助。 find_element_by_* 命令在 python 3.7+ 中已棄用 我做了一些修改


xPath = "//input[@type='checkbox']"
elems = driver.find_elements("xpath", xPath)
for elem in elems:
    if elem.tag_name == "input" and elem.get_attribute("type") == "checkbox":
        elem.click()


這段代碼對我有用,再次感謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM