python selenium实现点击a href

系统 235 0

在使用selenium进行登录操作练手时,发现登录按钮是用 a href="javascript.void(0)" 实现的,
于是按照习惯思维进行点击

            
              a 
              
                =
              
               soup
              
                .
              
              find_all
              
                (
              
              
                'a'
              
              
                )
              
              
                for
              
               names 
              
                in
              
               a
              
                :
              
              
                try
              
              
                :
              
              
                print
              
              
                (
              
              names
              
                [
              
              
                'href'
              
              
                ]
              
              
                )
              
              
                if
              
               names
              
                [
              
              
                'href'
              
              
                ]
              
              
                ==
              
              
                "javascript:void(0);"
              
              
                :
              
              
                print
              
              
                "IM IN HUR"
              
              
            names
              
                .
              
              click
              
                (
              
              
                )
              
              
                break
              
              
                except
              
              
                :
              
              
                continue
              
            
          

发现无法点击,提示names没有那个点击属性
因为他是xml属性,没有点击属性,需要进行如下改造

            
              aElements 
              
                =
              
               browser
              
                .
              
              find_elements_by_tag_name
              
                (
              
              
                "a"
              
              
                )
              
              
                for
              
               name 
              
                in
              
               aElements
              
                :
              
              
                if
              
              
                (
              
              name
              
                .
              
              get_attribute
              
                (
              
              
                "href"
              
              
                )
              
              
                is
              
              
                not
              
              
                None
              
              
                and
              
              
                "javascript:void"
              
              
                in
              
               name
              
                .
              
              get_attribute
              
                (
              
              
                "href"
              
              
                )
              
              
                )
              
              
                :
              
              
                print
              
              
                (
              
              
                "IM IN HUR"
              
              
                )
              
              
        name
              
                .
              
              click
              
                (
              
              
                )
              
              
                break
              
            
          

这个代码量比较多,还可以通过xpath实现
当登陆选项有class标签为login时可用。或者其他的。

            
              links 
              
                =
              
               browser
              
                .
              
              find_element
              
                .
              
              by_xpath
              
                (
              
              
                '//a[@class="login"]'
              
              
                )
              
              
links
              
                .
              
              click
              
                (
              
              
                )
              
            
          

https://stackoverflow.com/questions/35635988/selenium-and-python-cant-click-href-javascriptvoid0-with-click


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请请扫描上面二维码支持博主1元、2元、5元等您想捐的金额吧,狠狠点击下面给点支持吧

发表我的评论
最新评论 总共0条评论