python自动化web测试-表格元素相对位置定位方式

前言

最近一直被网页表格元素定位的问题困扰。今天下午终于尝试到了成功的方法,在此分享记录。

 #定位主页
 		main_xpath = '//main[@class="el-main main"]'
        locater = self.driver.find_element_by_xpath(main_xpath)
        time.sleep(1)
        #读取表内容,第一个功放值
        cssStr1 = 'main > div > div.el-tabs__content > div.box-card > div.el-table.el-table--fit.el-table--border.el-table--scrollable-x.el-table--enable-row-hover.el-table--enable-row-transition.el-table--mini > div.el-table__body-wrapper.is-scrolling-left > table > tbody > tr:nth-child(1) > td.el-table_1_column_9 > div > div > span'
        val = locater.find_element_by_css_selector(cssStr1).text
        print(val)

说明

这个方法是使用相对定位的方式。
先定位一个表格整体框的到返回对象,再通过这个对象定位表格内部元素。
但是,这个方法并不是所有的内嵌表格都有效
如果是内嵌html表格这种估计是不行的,需要通过切换frame的方式。(百度知道的)

说明2

估计是前端框架的问题,网上看了很多方式都无法定位公司自己研发的web前端页面表格元素。
对比后发现,我公司的前端不是使用网上说的iframe等方式。当我使用切换frame时,报错说不存在的frame
但是又无法通过xpath方式一步定位得到数据
最后尝试成功的只有二次定位方才成功。但是貌似有不是百分百成功。
这个问题的原因我是真的无法知晓,希望知识渊博的人可以指点一二,在此提前致谢【ღ( ´・ᴗ・` )比心】

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值