2016-11-29 4 views
0

У меня есть html-документ со статьей. У меня есть несколько тегов, которые я могу использовать для форматирования текста. Но мой текстовый редактор использует много ненужных тегов для форматирования. Я хочу написать программу в Python для фильтрации этих тегов. Какова была бы основная логика (структура, стратегия) такой программы? Я начинаю на Python и хочу изучать этот язык, решая реальную практическую задачу. Но для начала мне нужен общий обзор.Как фильтровать теги html с Python

+0

Вы нашли то, что искали? – Jarvis

ответ

0

Использование BeautifulSoup:

from BeautifulSoup import BeautifulSoup 
html_string = #the HTML code 
parsed_html = BeautifulSoup(html) 
print parsed_html.body.find('div', attrs = {attrs inside html code}).text 

Здесь div только тег, вы можете использовать любой тег, текст которой вы хотите отфильтровать.

0

Не очень понятно по вашим требованиям, но вы должны использовать готовые парсеры, такие как BeautifulSoup в python.

Вы можете найти tutorial here

0

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

re.sub('<[^<]+?>', '', text) 

выше функция будет искать ...

в противном случае вы можете использовать HTMLparser

from HTMLParser import HTMLParser 

class MLStripper(HTMLParser): 
    def __init__(self): 
     self.reset() 
     self.fed = [] 
    def handle_data(self, d): 
     self.fed.append(d) 
    def handle_entityref(self, name): 
     self.fed.append('&%s;' % name) 
    def get_data(self): 
     return ''.join(self.fed) 

def html_to_text(html): 
    s = MLStripper() 
    s.feed(html) 
    return s.get_data() 
Смежные вопросы