Удалить ссылки в html - Python
Формулировка задачи:
Всем доброго времени суток!
Поставлена задача: Найти на web-странице (на wiki-движке) ключевые слова и построить dot-дерево.
На данный момент я считала со страницы текст при помощи библиотеки request и нашла ключевые слова при помощи библиотеки rutermextract.
Но помимо текста у меня выводятся ссылки виде последовательностей символов и rutermextract определяет их как ключевые слова. Подскажите пожалуйста, как можно от них избавиться?
Здесь я принудительно убираю все лишнее, но если с тегами это можно сделать, то с ссылками это работает только на конкретной странице (дальше мне нужно будет по ключевым словам переходить на другие и искать ключевые слова там), мне нужен более универсальны способ.
Решение задачи: «Удалить ссылки в html»
textual
Листинг программы
import requests from lxml.html import fromstring import re #-------------------------------------- # замена множественных пробелов на один #-------------------------------------- def squeeze(value): """Replace all sequences of whitespace chars with a single space.""" return re.sub(r"[\x00-\x20]+", " ", value).strip() if __name__ == "__main__": url = "http://itas.pstu.ru" resp = requests.get(url) # дерево элементов tree = fromstring(resp.text) # выбираем только нужный элемент и рекурсивно конкатенируем все текстовое содержимое его дочерних узлов data = tree.xpath("//div[@id='content']")[0].text_content() data = squeeze(data) # убираем лишние пробелы # в конец текста попадает одна ссылка - «http://itas.pstu.ru/wiki/index.php?title=Новости_кафедры&oldid=1114» # ошибка верстки? - но ее можно легко удалить data = re.sub(r"«http:.+?»",'',data) print(data)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д