Python 我可以在使用同级语句之前或之后获取值吗?
要在使用同级语句之前或之后获取值吗 HTML代码Python 我可以在使用同级语句之前或之后获取值吗?,python,selenium-webdriver,xpath,Python,Selenium Webdriver,Xpath,要在使用同级语句之前或之后获取值吗 HTML代码 <tr><td width="295" align="right" class="bg1"><div class="barBg2"><div class="info" style="width:60%;"></div></div></td><td width="50" align="center" class="bg1">60%</td>&
<tr><td width="295" align="right" class="bg1"><div class="barBg2"><div class="info" style="width:60%;"></div></div></td><td width="50" align="center" class="bg1">60%</td><td width="110" align="center" class="bg3">半場控球率</td><td width="50" align="center" class="bg1">40%</td><td width="295" align="left" class="bg1"><div class="barBg"><div class="info" style="width:40%;"></div></div></td><iframe id="tmp_downloadhelper_iframe" style="display: none;"></iframe></tr>
预期产量
60% 40%
谓词意味着您希望选择前面和后面同级的元素,并使用“半場控球率" 文本内容。如果要选择具有“文本”前面或后面同级的元素半場控球率“,你需要
[preceding-sibling::td="半場控球率" or following-sibling::td="半場控球率"]
另外请注意,在您的示例中,text
是WebElements的列表。如果您想获得文本节点,可以尝试
texts = [td.text for td in driver.find_elements_by_xpath('//td[(preceding-sibling::td="半場控球率" or following-sibling::td="半場控球率") and not(div)]')]
您能为这两种情况共享HTML示例吗?共享URL(至少对我来说)是inaccessible@MaryUrl
http://shorturl.at/iksx1
未得到解决。可能它已更改。亲爱的,更改了URL,谢谢!您的预期输出是60%40%
,我在UI中没有看到这些值。亲爱的,正是“/*[@id=“matchData”]/div[5]中的xpath/table/tbody/tr[12]/td[2]”和“/*[@id=“matchData”]/div[5]/table/tbody/tr[12]/td[4]”亲爱的,似乎没有输出
[preceding-sibling::td="半場控球率" or following-sibling::td="半場控球率"]
texts = [td.text for td in driver.find_elements_by_xpath('//td[(preceding-sibling::td="半場控球率" or following-sibling::td="半場控球率") and not(div)]')]