lxml是一个非常好的处理xml和html的库.
一般情况下是用来处理html, 使用xpath提取信息
lxml 自带一个etree, 用来形成dom tree
1. 加载html源码
from lxml import etree
root = etree.HTML(htmlsource)
print root
<Element html at 0x10ca378>
2. print root.tag
>>> root.tag'html'
3. print root.tail
啥也没有
4. root.xpath('//div')
出现一个列表, 然后列表中的元素, 同样有root节点想同的方法.
5. >>> root.attrib
{'lang': 'en-us', 'class':'no-js'}
这个是一个属性, 是字典类型的数据
6. root.items()是root.attrib的节点属性的迭代, 还有root.iter.
7. 提取数据v= root.xpath('//*[@id="loginform"]/section[1]/ul/li[2]/fieldset[1]/input[3]')[0]
8. 更多强大的提取数据的功能, 需要你配合使用各种字符串处理方法和库, 比如正则表达式re.