извлечение и анализ текста, не заключенного в теги - PullRequest
0 голосов
/ 17 октября 2010

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

file1.html -> [[cat, ate, food, drank, milk], [file2.html, file3.html]]
file2.html -> [[dog, barked, ran, away], [file1.html, file4.html]]

Выбор ссылок очень прост - ищите якорные теги.У меня вопрос - как мне получить текст?Текст в html-файлах не заключен в такие теги, как <p>.

. Вот пример одного из входных HTML-файлов:

d_9.html
d_3.html

Бедотский шарлатанизм, нерешительность Pudsey Antaean haec эйфонизированно Бикса бактериологически нерешительно Hobbist petrosa похвально внушаемое благородное безмолвие химолизная плевательница Flatiron формализм беспристрастный * * * * *Может быть, текст выше не HTML, но тогда как мне его получить и разобрать?Есть идеи?

Ответы [ 4 ]

1 голос
/ 17 октября 2010

Один из способов сделать это - просто игнорировать все теги, а то, что у вас осталось, считается текстом Это сделает регулярное выражение большим.

0 голосов
/ 17 октября 2010

я думаю, что вам нужно получить данные (ссылки, ключевые слова ...) из файла HTML, но ваша проблема в том, что некоторая часть вашего файла HTML не содержит тегов для его анализаправильно, или это все HTML-файл, который не имеет тегов?если да, вы можете отформатировать html-файл с помощью tidy , это может помочь вам при его разборе;

поэтому на вашем месте я буду использовать регулярное выражение для сопоставления ссылок, например:

links = re.finditer(".*html", text) # by the way the regex  must be more complicated than that.  

и для ключевых слов "[кошка, ела, еда, выпила, молоко]"точно не знаю, что вы ищете;

надеюсь, это поможет

0 голосов
/ 17 октября 2010

Вы говорите, что текст «не HTML» и «не заключен в какие-либо теги». Так что это просто текст, разбирать нечего. Получите URL-адрес, и возвращаемое содержимое будет строкой, полной слов. Разделите слова с помощью .split (), и вы получите список слов.

0 голосов
/ 17 октября 2010

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

...