Advertisement
VssA

TextParsing0.1

Dec 18th, 2023 (edited)
941
0
Never
1
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.13 KB | None | 0 0
  1. from urllib.request import urlopen
  2. from bs4 import BeautifulSoup
  3.  
  4.  
  5.  
  6. # очищаем код от выбранных элементов
  7. def delete_div(code,tag,arg):
  8.      # находим все указанные теги с параметрами
  9.      for div in code.find_all(tag, arg):
  10.         # и удаляем их из кода
  11.         div.decompose()
  12.  
  13.  
  14. def clear_text(url):
  15.     # получаем исходный код страницы
  16.     inner_html_code = str(urlopen(url).read(), 'utf-8')
  17.     # отправляем исходный код страницы на обработку в библиотеку
  18.     inner_soup = BeautifulSoup(inner_html_code, "html.parser")
  19.     # оставляем только блок с содержимым статьи
  20.     # inner_soup = inner_soup.find('div', {"class": 'article-content'})
  21.     # удаляем титры
  22.     delete_div(inner_soup, "div", {'class': 'wp-block-lazyblock-titry'})
  23.  
  24.     # удаляем боковые ссылки
  25.     delete_div(inner_soup, "div", {'class': 'wp-block-lazyblock-link-aside'})
  26.  
  27.     # удаляем баннеры
  28.     for i in range(11):
  29.         delete_div(inner_soup, "div", {'class': 'wp-block-lazyblock-banner' + str(i)})
  30.  
  31.     # удаляем кат
  32.     delete_div(inner_soup, "div", {'class': 'accordion'})
  33.  
  34.     # удаляем преформатированный код
  35.     delete_div(inner_soup, 'pre', '')
  36.  
  37.     # удаляем вставки с кодом
  38.     delete_div(inner_soup, 'code', '')
  39.  
  40.     # возвращаем содержимое страницы
  41.     return inner_soup.get_text()
  42.  
  43. # выводим содержимое страниц
  44. if __name__ == "__main__":
  45.     # получаем исходный код страницы
  46.     # inner_html_code = str(urlopen('url').read(), 'utf-8')
  47.  
  48.     # отправляем исходный код страницы на обработку в библиотеку
  49.     # inner_soup = BeautifulSoup(inner_html_code, "html.parser")
  50.  
  51.     # delete_div(inner_soup, "div", {'class': 'wp-block-lazyblock-titry'})
  52.     print(clear_text('url'))
  53.     # print(inner_soup.get_text())
Advertisement
Comments
Add Comment
Please, Sign In to add comment
Advertisement