以下是我从这个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/DSCN0738.JPG"/></a>
然而,我真正想要的是<img alt=
我已经尝试了.get_text
并返回一个空白,我试过了
lista = soup.findAll('td',{'class':'thumb'},{'alt':'img'})
以及其他一些不会让我看到文字的变体。
我想让BeautifulSoup返回文本,还是会正常表达?我对RE的了解是zilch,任何输入都会非常感激!!
答案 0 :(得分:3)
您的td
元素包含一些嵌套元素;在每个img
元素中搜索td
标记,然后使用项目查找获取alt
属性:
for td in listm:
img = td.find('img')
if img is not None:
print img['alt']
答案 1 :(得分:3)
试试这个:
listm = soup.findAll('td',{'class':'thumb'})
for elem in listm:
print elem('img')[0]['alt']
这应在每个img
中找到td
标记,并打印alt
属性的值。
编辑:
您不应该假设存在img
标记。这样做:
listm = soup.findAll('td',{'class':'thumb'})
for elem in listm:
imgs = elem('img')
if imgs:
print imgs['alt']