Html 简单解析

1. Xpath

'''
    xpath 比 BeautifulSoup 快
    nodename	 选取此节点的所有子节点。
    /	        从根节点选取。
    //	        从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。
    .	        选取当前节点。
    ..	        选取当前节点的父节点。
    @           选取属性
    *	        匹配任何元素节点。
    @*	        匹配任何属性节点。
    node()      配任何类型的节点
'''
xpath 简单语法示例
//p[@class="story"]  全范围找 属性为story的p标签
//title  全范围找 title 标签
在里面 加一些 简单的判断如 and not 
//li[(@_chapterid) and not(@id="video-0")]   找到某属性,但不存在另一属性的li标签,


from lxml import etree

tree = etree.HTML(HTML内容) # 会自动补全 html 标签

tree.xpath('语法')[0].text   #取到内容

tree.xpath('语法')[0].tar    # 取到节点名            

tree.xpath('//title')[0].getparent().tag       父节点

tree.xpath('//a')[1].get('class')  获取属性

tree.xpath('//a')[1].attrib   所有属性的字典

tree.xpath('//text()')  所有字符串的列表    

tree.xpath("string()")  # 所有文本,字符串 类型,以单一标签为分界,如 <br/>

2.正则

正则比 xpath 和 BeautifulSoup 都快
网上 太多了,
随便找一篇:https://www.cnblogs.com/greatfish/p/7572131.html

其中一些方法增加点印象:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值