Разбор Python HTML с BS4 - PullRequest
       6

Разбор Python HTML с BS4

0 голосов
/ 24 июня 2018

У меня проблема с попыткой анализа HTML с использованием Python и Beautiful Soup, и я столкнулся с проблемой, которую хочу проанализировать для очень специфического фрагмента данных. С таким кодом я сталкиваюсь:

<div class="big_div">
   <div class="smaller div">
      <div class="other div">
         <div class="this">A</div>
         <div class="that">2213</div>
      <div class="other div">
         <div class="this">B</div>
         <div class="that">215</div>
      <div class="other div">
         <div class="this">C</div>
         <div class="that">253</div>

Существует серия повторяющихся HTML, как вы можете видеть только с разными значениями, моя проблема - найти определенное значение. Я хочу найти 253 в последнем div. Буду признателен за любую помощь, так как это повторяющаяся проблема при разборе через HTML.

Заранее спасибо!

До сих пор я пытался разобрать его, но, поскольку имена совпадают, я не знаю, как его перемещать. Я тоже пытался использовать цикл for, но практически ничего не добился.

1 Ответ

0 голосов
/ 26 июня 2018

Вы можете использовать строковый атрибут в качестве аргумента в find. BS документы для строки attr.

"""Suppose html is the object holding html code of your web page that you want to scrape
and req_text is some text that you want to find"""
soup = BeautifulSoup(html, 'lxml')
req_div = soup.find('div', string=req_text)

req_div будет содержать элемент div, который вы хотите.

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