【记录】selenium+xpath 文本信息定位,获取父节点属性

版权声明:本文为博主原创文章,转载请声明出处并添加原文链接。 https://blog.csdn.net/azsx02/article/details/79032329

页面部分代码如下

<td id="reportHeader47" header-class="'header-report-name'" data-title="'label.report'|i18n" sortable="'name'" filter="{ 'name': 'text' }" ng-click="onReportNameClick(report)" data-title-text="Report Name">
<i ng-class="{ 'icon-down-arrow':reportTableModel.editId===report.id, 'icon-right-arrow':reportTableModel.editId!==report.id}" class="icon-down-arrow" style=""></i>
<span class="report-name-text ng-binding" uib-tooltip="" tooltip-append-to-body="true">
2018-01-11 10:03
</span>

由于id=”reportHeader47”中的数字47不断在变化。更加此id定位元素,需要将数字提取出来。

ele = self.dr.find_element_by_xpath( '//span[contains(text(),"{}")]/..'.format(self.now) )
print(ele.get_attribute('id'))

通过xpath语法//span[contains(text(),”{}”)]定位到带有当前时间的2018-01-11 10:03元素。这里格式化字符串时,{}要加双引号

再通过/.. 找到父元素。

ele.get_attribute(‘id’)得到id值,即reportHeader47

另外,self.dr.page_source可以输出整个页面的html,可以和Beautifulsoup结合起来使用。

猜你喜欢

转载自blog.csdn.net/azsx02/article/details/79032329
今日推荐