Красивый суп findAll () по результатам findall () возвращает TypeError - PullRequest
2 голосов
/ 14 октября 2010

Привет, я новичок и в Питоне, и в Прекрасном супе.Я пытаюсь получить текст только из определенной части таблицы.Но, похоже, что результат findAll не относится к типу BeautifulSoup, и я могу снова запустить findAll.

select = soup.find('table',{'id':"tp_section_1"})
print "got the right table"
tissues = select.findAll('td',{"class":re.compile("tissue[10]")})
print "got the right cells, now I'd like to get just the text"
tissueText = tissues.findAll(text = True)

В последней строчке ошибки с ошибкой TypeError.Кажется, я могу запустить findAll в результате поиска, но не найти AllAll в последующем результате.Это потому, что мне нужно сделать это поэлементно?

Для справки: содержимое тканей до финальной строки выглядит следующим образом, и я пытаюсь извлечь текст, такой как "Надпочечники":

<td valign="top" height="15" class="tissue1" nowrap> <a class="tissue_link" href="normal_unit.php?antibody_id=20769&amp;mainannotation_id=2065466">Adrenal gland</a> </td>

1 Ответ

2 голосов
/ 14 октября 2010

Да, вам нужно сделать это поэлементно.find возвращает один элемент.findAll возвращает список, даже если список содержит только один элемент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...