2016-02-17 2 views
1

Я сделал HTML-запрос, из которого я хотел бы получить определенные элементы, но я не знаю, как получить к ним доступ с помощью BeautifulSoup4.Значение доступа в BeautifulSoup4

Ниже приведен пример возвращаемого HTML:

<td valign="top" > 
    <span class="recordAttribute" >Taxonomy</span>: Mollusca, Gastropoda, Littorinimorpha, Hydrobiidae, Hydrobia<br> 
    <span class="recordAttribute" >Identifiers:</span> AF118324[sampleid]    <br> 
    <span class="recordAttribute" >Depository</span>: Mined from GenBank, NCBI     &nbsp; 
</td> 

Я хотел бы получить доступ к элементу AF118324 (который является именем после идентификаторов диапазона класса).

Как я могу получить к нему доступ? (без использования подстроки, конечно)

+0

Возможный дубликат [BeautifulSoup: получить тег текст позади другого тега] (http://stackoverflow.com/questions/24662053/beautifulsoup-get-tag-text- за-другой-тег) –

ответ

1

Это работает для вас?

html = ''' 
     <td valign="top" > 
     <span class="recordAttribute" >Taxonomy</span>: Mollusca, Gastropoda, Littorinimorpha, Hydrobiidae, Hydrobia<br> 
     <span class="recordAttribute" >Identifiers:</span> AF118324[sampleid]    <br> 
     <span class="recordAttribute" >Depository</span>: Mined from GenBank, NCBI     &nbsp; 
     </td> 
     ''' 
soup = BeautifulSoup(html, 'html.parser') 
obj = soup.find('span', text='Identifiers:').nextSibling 
print(obj) 

который печатает:

AF118324[sampleid] 
+0

Работает как очарование! Благодаря :) – Mornor

Смежные вопросы