Python 选择其子/孙辈/的元素。。包含具有指定模式的元素
我正在使用Python 选择其子/孙辈/的元素。。包含具有指定模式的元素,python,html,xpath,lxml,Python,Html,Xpath,Lxml,我正在使用lxml,使用库的html模块 如何获取包含具有特定特征的元素的元素 例如: <TR> <TD>Welcome</TD> <TD>other</TD> </TR> <TR> <TD>Bye Bye</TD> <TD>another</TD> </TR> 欢迎 其他 再见 另一个 我如何选择包含欢迎词的元素? 不知道如何写下
lxml
,使用库的html
模块
如何获取包含具有特定特征的元素的元素
例如:
<TR>
<TD>Welcome</TD>
<TD>other</TD>
</TR>
<TR>
<TD>Bye Bye</TD>
<TD>another</TD>
</TR>
欢迎
其他
再见
另一个
我如何选择包含欢迎词的
元素?
不知道如何写下正确的
xpath
模式有很多方法。我对xPath不是非常熟练,所以我会这样做
myTree = html.fromstring(open(somePath to my htmlfile).read())
rows = [ e for e in myTree if e.tag == 'tr']
for row in rows:
cells = [e for e in row if e.tag == 'td']
for cell in cells:
if cell.text_content = 'Welcome'
print ' I have the row I want'
break
当程序中断该行时,您将拥有行中的第一行,该行有一个带有单词Welcome的单元格。您可以对此进行大量修改。也就是说,如果您在光标处键入row,那么将显示的row元素就是您的特定行
e = doc.xpath('//tr[td[text()="Welcome"]]')[0]