[問題] 用selenium 勾選 checkbox 問題

看板Python作者 (肥宅eeee)時間4年前 (2020/11/27 11:56), 4年前編輯推噓2(204)
留言6則, 2人參與, 4年前最新討論串1/1
各位大大您好 小弟最近遇到一個問題 heml如下 <tr> <td valign="middle"> <table border="0" cellpadding="0" cellspacing="0"><tbody><tr> <td><input name="_EinsPubFav11" onclick="AdvTreeClickEinForm0(&quot;EinForm0&quot;,&quot;&quot;,&quot;EinsPubFav11&quot;,event);" type="CHECKBOX"></td> <td valign="top"><a href="javascript:AdvTreeExpandEinForm0(&quot;EinForm0&quot;,&quot;EinsPubFav11&quot;)"><img src="/ImgTmp/CPN_EIPWEB_EIPadv_tree0002.gif" border="0" height="20" width="19"></a></td> <td><a href="javascript:AdvTreeExpandEinForm0(&quot;EinForm0&quot;,&quot;EinsPubFav11&quot;)" class="Default">台北全體員工</a></td> </tr></tbody></table></td> </tr> 因為是checkBox 沒有id 也沒有nema 屬性讓我尋找 所以做法是使用 css_selector 來尋找 browser.find_element_by_css_selector("input[name='_EinsPubFav11']").ckick() 原本也有查到使用find_element_by_xpath 但這方法好像也行不通都會跑錯誤訊息 想問一下大大 如果我需要勾選Checkbox的話該怎麼改比較好? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.59.162.19 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1606449410.A.9EC.html

11/27 13:52, 4年前 , 1F
onclick會fire AdvTreeClickEinForm0 要給參數
11/27 13:52, 1F
不好意思 這部分要給參數的原因我不太清楚 checkbox 在做click的時候不能單純像是按鈕一樣嗎? find_element_by_name("_EinsPubFav11").click() ※ 編輯: ChanSui (210.59.162.19 臺灣), 11/27/2020 14:23:29

11/27 17:05, 4年前 , 2F
selenium 有find_element_by_name 但是如果網頁上
11/27 17:05, 2F

11/27 17:06, 4年前 , 3F
有多個相同name的物件 就會去抓第一個(不一定是你要)
11/27 17:06, 3F

11/27 17:06, 4年前 , 4F
用find_elements_by_name 會抓全部放到list
11/27 17:06, 4F

11/27 17:07, 4年前 , 5F
你原本的方式就是可以的 感覺沒必要再改
11/27 17:07, 5F

11/27 17:10, 4年前 , 6F
也沒必要帶參數 你要click的東西本身就寫好參數了
11/27 17:10, 6F
文章代碼(AID): #1Vm7a2di (Python)
文章代碼(AID): #1Vm7a2di (Python)