K
K
kiddle2017-10-15 20:43:04
Python
kiddle, 2017-10-15 20:43:04

How to split data in regular expressions?

Hello, I have a question: I need to extract data between tags from html code . I am trying to do it like this:<b></b> и </b>(<br><br/>)

for p in soup.find('div', id='cont_txt').findAll('p'):
    print(re.findall(r'(?<=<b>).*?(?=</b>)|(?<=</b>).*?(?=</p>|<br>|<br/>)', str(p).encode('ISO-8859-1').decode('windows-1251')))

How do I create an expression template?
<div id="cont_txt">
<h1>Декларация о соответствии Д-RU.АЯ96.В.00340</h1>
<h2>МОЛОКО КОРОВЬЕ СЫРОЕ<br />
</h2>
<div style="width: 300px; padding-bottom: 30px; padding-top: 20px;"><form accept-charset="utf-8" class="search" action="/reestr-declaratcii-sootvetstviia/ysearch.php" method="get"><input class="input" name="searchid" type="hidden" value="2304877" /><input class="input" name="text" type="text" placeholder="Поиск в реестре" /><input class="submit" name="" type="submit" value="" /><input class="input" name="web" type="hidden" value="0" /></form></div>

  <form accept-charset="utf-8" action="reg_number_search.php" method="get">
   <p><strong>Декларация о соответствии №</strong>  <input style="width: 280px;" class="input" name="str" type="text" placeholder="Например: РОСС RU.ФМ05.Д47188"> 
   <input type="submit" value="Перейти"></p>
  </form>
  <p> </p>
<h4>Сведения из реестра:</h4><p><b>Тип:</b> Декларация РФ</p><p><b>Регистрационный номер:</b> Д-RU.АЯ96.В.00340</p><p><b>Дата начала действия:</b> 21.12.2011</p><p><b>Дата окончания действия:</b> 21.12.2012</p><p><b>Схема декларирования:</b></p><p><b>Сведения о заявителе:</b></p><p style="padding-left: 20px;"><b>Тип заявителя</b> - Заявитель Юридическое лицо<br /><b>Полное наименование/ФИО ИП</b> - Общество с ограниченной ответственностью Агрофирма им. Л.М.Овчинникова<br /><b>ФИО руководителя</b> - А.А.Иванов<br /><b>Номер телефона</b> - (83636 )9-51-41<br /><b>ОГРН</b> - 1021200663461<br /><b>Адрес места нахождения ЮЛ/ИнЮЛ или жительства ИП</b> - Россия, Республика Марий Эл, Новоторъяльский район, с. Пектубаево, Микрорайон, д.3, 425443<br /></p><p><b>Сведения об изготовителе:</b></p><p style="padding-left: 20px;"><b>Тип изготовителя</b> - Изготовитель Юридическое лицо<br /><b>Полное наименование ЮЛ или ФИО ИП</b> - Общество с ограниченной ответственностью Агрофирма им. Л.М.Овчинникова<br /><b>Номер телефона</b> - (83636 )9-51-41<br /><b>ОГРН</b> - 1021200663461<br /></p><p><b>Сведения о продукции:</b></p><p style="padding-left: 20px;"><b>Тип объекта декларирования</b> - Серийный выпуск<br /><b>Полное наименование продукции</b> - МОЛОКО КОРОВЬЕ СЫРОЕ<br /></p><p><b>Таблица стандартов:</b></p><p style="padding-left: 20px;"><b>Номер приложения для таблицы стандартов </b> - 56<br /></p><p><b>Сведения об органе по сертификации:</b></p><p style="padding-left: 20px;"><b>Полное наименование</b> - ОРГАН ПО СЕРТИФИКАЦИИ ПРОДУКЦИИ И УСЛУГ ООО &quot;МАРИЙСКИЙ ЦЕНТР СЕРТИФИКАЦИИ И ЭНЕРГОСБЕРЕЖЕНИЯ&quot;<br /><b>Номер аттестата</b> - РОСС RU.0001.10АЯ96<br /><b>ФИО руководителя</b> - И.П.Чуракова<br /><b>Адрес места нахождения</b> - ул. Тургенева, д. 9, г. Йошкар-Ола, Республика Марий Эл, 424006, тел. (8362) 72-00-30, факс 72-00-30<br /></p></div>
<p> </p>
<div id="yandex_ad1">
<div style="text-align:center;">
<div id="yandex_ad" style="display: inline-block;"></div>
</div>

Answer the question

In order to leave comments, you need to log in

1 answer(s)
D
Dmitry, 2017-10-15
@LazyTalent

for p_tag in soup.find('div', id='cont_txt').findAll('p'):
    [x for x in p_tag.contents if getattr(x, 'name', None) != 'br']

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question