Парсинг и замена текста в html (python3)

Узнай цену своей работы

Формулировка задачи:

Приветствую Друзья, если не затруднит, подскажите решение для python3. Есть некий html файл, вполне себе стандартный, в нем среди прочего, есть конкретный блок span, выглядит примерно так:
Возможно-ли как-то взять текст параграфов, заменить его (в моем случае будет перевод), сохранив при этом структуру разметки, то есть что-бы получилось
перекопал кучу документации, но как-то пока без толку, да еще сбивает с толку что как я понял задачу можно решить кучей способов, всякие там lxml, soup или может вообще через regexp. Заранее спасибо

Решение задачи: «Парсинг и замена текста в html (python3)»

textual
Листинг программы
>>> from lxml import etree
>>> doc='''<html><body><span id="1">text1</span><span id="2">text2</span></body></html>'''
>>> tree = etree.fromstring(doc)
>>> path = tree.xpath("//span[@id='1']")
>>> for i in path: i.text = 'new text'
 
>>> s = etree.tostring(tree,pretty_print=True).decode()
>>> print(s)
<html>
  <body>
    <span id="1">new text</span>
    <span id="2">text2</span>
  </body>
</html>
>>>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5