Python 美化组以查找<;img alt标签
下面是我从Python代码行中得到的信息Python 美化组以查找<;img alt标签,python,regex,beautifulsoup,Python,Regex,Beautifulsoup,下面是我从Python代码行中得到的信息 listm = soup.findAll('td',{'class':'thumb'}) 当我遍历listm时,下面是一个项目的示例 <a href="/property-search/property-details/1021206?StrtNum=1507"><img alt="1507 BOSTWICK LN" src="/res/slir/w75-h57-c4:3/propertyimages/20120904/BB/DSCN
listm = soup.findAll('td',{'class':'thumb'})
当我遍历listm时,下面是一个项目的示例
<a href="/property-search/property-details/1021206?StrtNum=1507"><img alt="1507 BOSTWICK LN" src="/res/slir/w75-h57-c4:3/propertyimages/20120904/BB/DSCN0738.JPG"/></a>
然而,我真正想要的是
您的td
元素中的“1507 BOSTWICK LN”包含一些嵌套元素;在每个td
元素中搜索img
标记,然后使用带有项查找的alt
属性:
for td in listm:
img = td.find('img')
if img is not None:
print img['alt']
试试这个:
listm = soup.findAll('td',{'class':'thumb'})
for elem in listm:
print elem('img')[0]['alt']
这应该在每个td
中找到img
标记,并打印alt
属性的值
编辑:
您不应假设存在img
标记。改为这样做:
listm = soup.findAll('td',{'class':'thumb'})
for elem in listm:
imgs = elem('img')
if imgs:
print imgs['alt']
不用担心,我想你只是在抽签时更快了!此外,你的答案更好。我不检查img
标签。我只是假设它的存在;谢谢你们两位的回复!使用if-imgs:print-imgs['alt']或if-imgs不是None:print-imgs有什么区别吗?至于它是否有效,没有区别。然而,根据PEP8,如果imgs:
是合适的。链接:如果这个答案对你有帮助,你应该接受它为正确=)