1、lxml.etree.HTML(data)
lxml.etree.HTML(data)是Lxml库中的方法,用于将HTML字符串data解析为可操作的Element对象,这样可以使用Element对象的各种方法来操作和查询HTML文档。具体来说,该方法会将HTML字符串转换为Element树,即一个由元素节点和文本节点构成的树状结构,每个节点都有相应的标签名、属性和内容。在使用该方法时,需要先导入lxml库,并将HTML字符串传递给HTML()方法。例如:
from lxml import etree
data = "<html><body><h1>Hello World</h1></body></html>"
html = etree.HTML(data)
title = html.xpath("//h1")[0].text
print(title)
该代码会输出:Hello World,表示成功提取了HTML文档中的h1元素的文本内容。
2、datas.xpath
是 Python 中 lxml
库提供的一种 xpath 解析方式,用于查找 XML 或 HTML 中指定的节点或节点集合,语法形式如下:
element.xpath(xpath_expression)
其中,element
为 lxml.etree.Element 对象,即 XML 或 HTML 文档的根元素或子元素,xpath_expression
是要查询的 XPath 表达式。
例如,要查询 HTML 文档中所有 <a>
标签的 href
属性值,可以使用如下 xpath 表达式:
from lxml import html
# 解析 HTML 文档
doc = html.fromstring(html_str)
# 查询所有 <a> 标签的 href 属性值
hrefs = doc.xpath('//a/@href')
print(hrefs)
上述代码中,html_str
是 HTML 文档的字符串表示,html.fromstring()
可以将其解析为一个 lxml.etree.Element
对象,然后使用 xpath()
方法,传入 '//a/@href'
xpath 表达式,查询所有 <a>
标签的 href
属性值,最终得到一个列表,其中每个元素都是一个 str
类型的属性值。
3、w=Counter(str)
会返回一个 Counter
对象,表示每个元素出现的次数计数器。Counter
对象是 Python 内置的一个类,可以用来统计可哈希对象出现的次数。它通常被用来对一个集合或者列表中的元素进行计数。
Counter
对象是一个字典,其中每个元素对应一个键和一个值,表示该元素出现的次数。键是原始集合中的元素,值是该元素在集合中出现的次数。可以通过 keys()
方法获取 Counter 对象中的所有键,通过 values()
方法获取所有的值,通过 items()
方法获取所有的键值对。
因此,w=Counter(str)
输出的是一个 Counter
对象,它是 Python 内置的一个类,用来统计可哈希对象出现的次数。