Извлечение данных с веб-страницы - PullRequest
0 голосов
/ 19 апреля 2011

Я делаю школьный проект, который требует извлечения данных из веб-страниц.Чтобы быть точным, мне нужна библиотека или программа с открытым исходным кодом для извлечения удобочитаемого контента из HTML / текстовых данных.Что-то вроде веб-браузера, отображающего текстовое содержимое.

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

Дополнительная информация:

Мне нужно это для вычисления сходствамежду текстовыми документами.

Любая помощь будет оценена.Спасибо

Ответы [ 2 ]

1 голос
/ 19 апреля 2011

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

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

0 голосов
/ 19 апреля 2011

Если все, что вас волнует, это текстовое сходство, вы можете просто написать регулярное выражение, чтобы удалить все HTML-теги вида </?(every|single|valid|tag)[^>]*> (возможно, сначала удалив все теги <script>.*</script>), а затем объединить все содержимое в длинный абзац Это не было бы плохим использованием регулярного выражения вообще; вот для чего они там.

Я мог бы порекомендовать http://docs.python.org/library/xml.dom.minidom.html, но imho интерфейс может быть очень неудобным. Также вам не нужен доступ к иерархической структуре, только текст. В противном случае парсер будет лучше, чем регулярное выражение (что в противном случае было бы ужасной идеей).

...