2012-07-16 29 views
0

我有HTML页面可以通过Python与Lxml解析。问题是我必须从HTML图像标签的值中取出,这些值没有任何类或id属性。就像这样:从HTML中选择图像标记attr without class或id

<table cellspacing="0" cellpadding="0" border="0"> 
<tbody><tr> 
<td align="left" valign="top" style="padding: 0 10px 0 60px;"> 
<img src="/files/135.jpg" width="64" height="64"> 
</td> 
<td align="left" valign="middle"><h1>Archer/Арчер</h1> 
</td> 
</tr> 
</tbody></table> 

所以,解决我的任务我有问题 - 可能写的jQuery般的表达,以选择这个HTML图像标记或我要提取通过迭代属性的所有IMG标签和获取src-attribute,具有特定的宽度和高度?

+0

请问您可以发布更多的html代码?也许我们可以使用父选择器。 – 2012-07-16 20:26:58

+0

我已更新我的帖子,谢谢。这是完整的HTML代码,包含img-tag。 Upper是唯一的身体标记。 – 2012-07-16 20:29:32

回答

0

您应该尝试xpath - 由lxml支持。 你可以使用Mozilla Firefox的firepath插件来玩xpath一下。 您的XPath表达式的端部可以是像(宽度> 64?) ............/IMG [@ BORDER = “0”]

0

xpath查询工作在您的样品数据:

import lxml.html 

root = lxml.html.fromstring('your sample data').getroottree() 
root.xpath("//img[@width='64' and @height='64']/@src") 
# ['/files/135.jpg']