selenium元素定位

https://www.cnblogs.com/qingchunjun/p/4208159.html

 

判定元素是否存在

private boolean isElementPresent(By by){ try{ driver.findElement(by); return true; }catch(Exception e){ return false; } }

 

滑动页面

# 执行JavaScript脚本
browser.execute_script('window.scrollTo(0,document.body.scrollHeight)') browser.execute_script('alert("To Bottom")')

 

查找元素

# find_element_by_name 通过name查找单个元素 # find_element_by_xpath 通过xpath查找单个元素 # find_element_by_link_text 通过链接查找单个元素 # find_element_by_partial_link_text 通过部分链接查找单个元素 # find_element_by_tag_name 通过标签名称查找单个元素 # find_element_by_class_name 通过类名查找单个元素 # find_element_by_css_selector 通过css选择武器查找单个元素 # find_elements_by_name 通过name查找多个元素 # find_elements_by_xpath 通过xpath查找多个元素 # find_elements_by_link_text 通过链接查找多个元素 # find_elements_by_partial_link_text 通过部分链接查找多个元素 # find_elements_by_tag_name 通过标签名称查找多个元素 # find_elements_by_class_name 通过类名查找多个元素 # find_elements_by_css_selector 通过css选择武器查找多个元素

 

获取元素信息

btn_more = browser.find_element_by_id('btn_more') print(btn_more.get_attribute('class')) # 获取属性 print(btn_more.get_attribute('href')) # 获取属性 print(btn_more.text) # 获取文本值

 

 

在给定的时间内去查找元素
/** * 在给定的时间内去查找元素,如果没找到则超时,抛出异常 * */ public static void waitForElementToLoad(WebDriver driver, int timeOut, final By By) { try { (new WebDriverWait(driver, timeOut)).until(new ExpectedCondition<Boolean>() { public Boolean apply(WebDriver driver) { WebElement element = driver.findElement(By); return element.isDisplayed(); } }); } catch (TimeoutException e) { Assert.fail("超时!! " + timeOut + " 秒之后还没找到元素 [" + By + "]"); } }

 

 

__EOF__

本文作者闪电旅途
本文链接https://www.cnblogs.com/jiaoyang77/p/8072117.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   闪电旅途  阅读(235)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示