您当前的位置: 首页 >  html

彭世瑜

暂无认证

  • 3浏览

    0关注

    2791博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

数据清洗:利用lxml移除html中的元素

彭世瑜 发布时间:2020-04-03 17:13:43 ,浏览量:3

有一段html文本


    
        这是标题
    
    
        这是内容
        要移除的内容
    

我希望把

要移除的内容
移除

安装lxml

pip install lxml

代码实例

# -*- coding: utf-8 -*-

from lxml import etree

text = """

    
        这是标题
    
    
        
这是内容
要移除的内容
""" tree = etree.fromstring(text) # 返回一个列表 remove_tags = tree.xpath('//div[last()]') if remove_tags: remove_tag = remove_tags[0] remove_tag.getparent().remove(remove_tag) print(etree.tounicode(tree)) """ 这是标题
这是内容
"""

最后也实现了我的要求,可以封装为单独的函数,以便调用


from lxml import html, etree


def remove_elements(html, xpath):
    """
    移除html 文本中的元素
    :param html: str
    :param xpath: str
    :return: str
    """
    # tree = etree.fromstring(html)
	tree = html.fragment_fromstring(f'
{text}
') # 返回一个列表 remove_tags = tree.xpath(xpath) for remove_tag in remove_tags: remove_tag.getparent().remove(remove_tag) return etree.tounicode(tree) if __name__ == '__main__': text = """ 这是标题
这是内容
要移除的内容
""" print(remove_elements(text, '//div[last()]'))

参考 https://lxml.de/tutorial.html

关注
打赏
1665367115
查看更多评论
立即登录/注册

微信扫码登录

0.2344s