刚才在QQ群里看到有人提问,如何实现退出百度登录问题。那么之所以会有这个问题,主要是因为这个元素,如下图所示,是无法直接定位到的:

经过研究发现,要想定位到这种元素,拢共分两步:

第一步,把鼠标移到能使目标元素显示在页面上的前置元素上;

第二步,通过xpath对目标标签元素进行定位。

代码如下:

using System;
using OpenQA.Selenium;
using OpenQA.Selenium.IE;
using OpenQA.Selenium.Interactions;
using System.Threading;namespace BaiduAutoLoginOut
{class Program{static void Main(string[] args){IWebDriver iw = new InternetExplorerDriver();iw.Navigate().GoToUrl("http://www.baidu.com");IWebElement login = iw.FindElement(By.Id("s_username_top"));Actions action = new Actions(iw);action.MoveToElement(login).Build().Perform();WaitUntilPageLoaded(iw, "//a[text()=' 退出 ']");iw.FindElement(By.XPath("//a[text()=' 退出 ']")).Click();}private static void WaitUntilPageLoaded(IWebDriver iw, string v){try{iw.FindElement(By.XPath(v));}catch (Exception ex){Console.WriteLine(ex.ToString());Thread.Sleep(1000);WaitUntilPageLoaded(iw, v);}}}
}

转载于:https://www.cnblogs.com/LanTianYou/p/4935709.html

C#中通过Selenium定位a标签的问题相关推荐

  1. python网络爬虫系列(七)——selenium的介绍 selenium定位获取标签对象并提取数据 selenium的其它使用方法

    一.selenium的介绍 知识点: 了解 selenium的工作原理 了解 selenium以及chromedriver的安装 掌握 标签对象click点击以及send_keys输入 1. sele ...

  2. python爬虫获取标签规则_Python爬虫之数据提取-selenium定位获取标签对象并提取数据...

    ## selenium提取数据 知识点:了解 driver对象的常用属性和方法 掌握 driver对象定位标签元素获取标签对象的方法 掌握 标签对象提取文本和属性值的方法 1. driver对象的常 ...

  3. selenium定位a标签python_selenium自动化,已经定位到A标签的位置,但是点击A标签时不执行后台的js方法。...

    展开全部 在定位第一个栏目并模拟点击时,无法使用click方法,原来是左边的图标遮挡了a标签,32313133353236313431303231363533e4b893e5b19e313334336 ...

  4. selenium定位svg标签下元素

    问题描述: 使用Xpath方法对svg下元素进行定位,会发现无法定位到svg下的元素 Xpath写法:driver.find_element(xpath,"//*[@id='userinfo ...

  5. 在Selenium中按TagName定位元素

    Selenium定位器是处理网页上的元素时的关键. 从ID,名称,类,标记名,XPath,CSS选择器等定位器列表中,可以根据需要选择其中任何一种,然后在网页上找到Web元素. 由于与tagName或 ...

  6. Selenium webdriver中的xpath定位

    使用selenium进行自动化测试,其实很多时候就是模拟用户的操作,在前端页面对元素进行操作,因此元素的定位在自动化测试中是至关重要的.关于如何 使用id,className,name,linkTex ...

  7. python元素定位id和name_Python Selenium定位html元素|find_element_by_class-name-id-tag-css-xpath-text...

    Selenium官方给了八种定位方法 1.find_element_by_class_name通过class name定位元素 我们拿Pythonfree网站来举例,点击右上角的搜索框. 鼠标右击搜索 ...

  8. 在硒中按TagName定位元素

    硒定位器是处理网页上的元素时的关键. 从ID,名称,类,标记名,XPath,CSS选择器等定位器列表中,可以根据需要选择其中任何一种,然后在网页上找到Web元素. 由于与tagName或linktex ...

  9. selenium 定位方式5

    Selenium 8大定位方法中的最后一个 find_element_by_tag_name,这是所有定位方式中最不理想的定位方式,主要是因为一个页面中,存在相当多的相同的标签,基本做不到唯一定位,通 ...

最新文章

  1. 手语识别 机器学习_机器学习入门实践,让机器识别一只猫
  2. 【文字检测算法整理】
  3. 026_图书管理案例
  4. Java Web 请求转发与请求重定向
  5. u盘被保护怎样解除?(第十招)
  6. python复杂网络全局效率计算_python复杂网络库networkx:算法
  7. php正则 网址,php使用正则表达式获取字符串中的URL
  8. 云上直播性能优化及测试方案详解
  9. Funcode-黄金矿工
  10. 系统分析与设计方法---面向对象的分析与设计
  11. 如何将gif动图分解成png格式?动图分解器如何使用?
  12. 计算机电源管理设置,如何修改计算机中设置的显卡电源管理模式
  13. 银行机构的分类、特点及转型方向
  14. 如何关闭谷歌浏览器阅读清单(新方法)
  15. 我的世界java能开光追吗_《我的世界》开光追是怎样一种体验
  16. yapi 接口管理平台手册
  17. java 笔触类_Java-多种颜色/笔触手势,并在同一GestureOverl...
  18. 小米路由器进入linux系统,小米路由器操作系统竟不是miui
  19. Stack Ball 堆栈球小游戏unity3d开发教程
  20. 变更百度智能云DNS--域名解析

热门文章

  1. PAT 乙级 1014. 福尔摩斯的约会 (20) Java版
  2. 【软件测试】《软件测试技术基础》知识点整理
  3. 1004. 成绩排名 (20)-PAT乙级真题
  4. matlab调用库函数,Matlab调用函数的详细操作
  5. android手机刷win10吗,无处不在!安卓手机能刷Win10系统了
  6. 让孩子亲近自然,提高家长对户外亲子研学的人生和了解。
  7. 原生js双向数据绑定
  8. linux下移动或者复制文件覆盖相同文件夹时,文件夹里面的每个文件都提示是否覆盖...
  9. 【转】基于SQL的Web系统安全防范——SQL注入漏洞
  10. reduce个数究竟和哪些因素有关