Beautiful Soup – получить весь текст, но сохранить ссылку в формате HTML?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Beautiful Soup – получить весь текст, но сохранить ссылку в формате HTML?

Сообщение Anonymous »

Мне нужно обработать большой архив чрезвычайно запутанного HTML, полного посторонних таблиц, диапазонов и встроенных стилей, в уценку.

Я пытаюсь использовать Beautiful Soup для достижения цели эта задача, и моя цель - это, по сути, выходные данные функции get_text(), за исключением сохранения тегов привязки с неповрежденным href.

В качестве примера я хотел бы преобразовать:


HelloWorld

Foo Bar Baz

Example Link: Google



В:

Hello World
Foo Bar Baz
Example Link: Google


До сих пор я думал просто захватить все теги и развернуть их все, если они не являются привязками, но это приводит к тому, что текст повторяется несколько раз как суп. .find_all(True) возвращает рекурсивно вложенные теги как отдельные элементы:

#!/usr/bin/env python

from bs4 import BeautifulSoup

example_html = 'HelloWorld
Foo Bar Baz
Example Link: Google'

soup = BeautifulSoup(example_html, 'lxml')
tags = soup.find_all(True)

for tag in tags:
if (tag.name == 'a'):
print("{}".format(tag['href'], tag.get_text()))
else:
print(tag.get_text())


Который возвращает несколько фрагментов/дубликатов по мере перемещения анализатора вниз по дереву:

HelloWorldFoo Bar BazExample Link: Google
HelloWorldFoo Bar BazExample Link: Google
HelloWorldFoo Bar BazExample Link: Google
HelloWorld
Hello
World

Foo Bar Baz
Baz

Example Link: Google
Google


Подробнее здесь: https://stackoverflow.com/questions/520 ... -link-html
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Beautiful Soup – получить весь текст, но сохранить ссылку в формате HTML?
    Anonymous » » в форуме Python
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Объект Beautiful Soup «ResultSet» не имеет атрибута «текст».
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • При анализе HTML с помощью Beautiful Soup иногда отсутствуют дочерние теги.
    Anonymous » » в форуме CSS
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous
  • При анализе HTML с помощью Beautiful Soup иногда отсутствуют дочерние теги.
    Anonymous » » в форуме CSS
    0 Ответы
    24 Просмотры
    Последнее сообщение Anonymous
  • Списки массивов html-элементов, упорядоченные по веб-сайтам в selenium/beautiful Soup
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»