Парсинг и замена текста в html (python3)
Формулировка задачи:
Приветствую
Друзья, если не затруднит, подскажите решение для python3. Есть некий html файл, вполне себе стандартный, в нем среди прочего, есть конкретный блок span, выглядит примерно так:
Возможно-ли как-то взять текст параграфов, заменить его (в моем случае будет перевод), сохранив при этом структуру разметки, то есть что-бы получилось
перекопал кучу документации, но как-то пока без толку, да еще сбивает с толку что как я понял задачу можно решить кучей способов, всякие там lxml, soup или может вообще через regexp.
Заранее спасибо
Листинг программы
- ...
- <span itemname="source">параграф 1</br>
параграф 2</br>
параграф 3</span>- ...
Листинг программы
- ...
- <span itemname="source">new paragraph 1</br>
new paragraph 2</br>
new paragraph 3</span>- ...
Решение задачи: «Парсинг и замена текста в 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>
- >>>
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д