我是靠谱客的博主 强健鞋垫,最近开发中收集的这篇文章主要介绍selenium中'WebElement' object is not iterable报错问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

checkbox.html源码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

    

        -equiv="content-type"content="text/html;charset=utf-8"/>

        /title>

        type="text/javascript"async=""src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"><</CODE>/script>

        ="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css"rel="stylesheet"/>

        ="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"><</CODE>/script>

    <</CODE>/head>

    

        

checkbox<</CODE>/h3>

        

class="well">

            

class="form-horizontal">                

class="control-group">

                    class="control-label"for="c1">checkbox1<</CODE>/label>

                    

class="controls">

                        <</CODE>inputtype="checkbox"id="c1"/>

                    <</CODE>/div>

                <</CODE>/div>

                

class="control-group">

                    class="control-label"for="c2">checkbox2<</CODE>/label>

                    

class="controls">

                        <</CODE>inputtype="checkbox"id="c2"/>

                    <</CODE>/div>

                <</CODE>/div>

                

class="control-group">

                    class="control-label"for="c3">checkbox3<</CODE>/label>

                    

class="controls">

                        <</CODE>inputtype="checkbox"id="c3"/>

                    <</CODE>/div>

                <</CODE>/div>                     

                

class="control-group">

                    class="control-label"for="r">radio<</CODE>/label>

                    

class="controls">

                        <</CODE>inputtype="radio"id="r"/>

                    <</CODE>/div>

                <</CODE>/div>                     

            <</CODE>/form>

        <</CODE>/div>

    <</CODE>/body>

<</CODE>/html>

  Python代码:

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

21

#coding=utf-8

 

from selenium importwebdriver

import time

import os

 

dr =webdriver.Firefox()

file_path = 'file:///' +os.path.abspath('checkbox.html')

dr.get(file_path)

 

# 选择所有的checkbox并全部勾上

 

checkboxes =dr.find_element_by_css_selector('input[type=checkbox]')

for check incheckboxes:

    check.click()

time.sleep(1)

 

# 打印当前页面上有多少个checkbox

 

 

dr.quit()

  报错内容:TypeError: 'WebElement' object isnot iterable

解决办法:

checkboxes = dr.find_element_by_css_selector('input[type=checkbox]')

改为:

checkboxes = dr.find_elements_by_css_selector('input[type=checkbox]')

或者:input1 = dr.find_elements_by_tag_name('input')

注意:因为是定位一组元素,而不是单个元素,在书写时要特别注意;

最后

以上就是强健鞋垫为你收集整理的selenium中'WebElement' object is not iterable报错问题的全部内容,希望文章能够帮你解决selenium中'WebElement' object is not iterable报错问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(30)

评论列表共有 0 条评论

立即
投稿
返回
顶部