#本节学习lxml模块和xpath
str ="""
<div class="wrapper">
<i class="iconfont icon-back" id="back">唐浩</i>
<a href="/" id="channel">新浪社会</a>
<ul id="nav">
<li><a href="http://domestic.firefox.sina.com/" title="国内">国内</a></li>
<li><a href="http://world.firefox.sina.com/" title="国际">国际</a></li>
<li><a href="http://mil.firefox.sina.com/" title="军事">军事</a></li>
<li><a href="http://photo.firefox.sina.com/" title="图片">图片</a></li>
<li><a href="http://society.firefox.sina.com/" title="社会">社会</a></li>
<li><a href="http://ent.firefox.sina.com/" title="娱乐">娱乐</a></li>
<li><a href="http://tech.firefox.sina.com/" title="科技">科技</a></li>
<li><a href="http://sports.firefox.sina.com/" title="体育">体育</a></li>
<li><a href="http://finance.firefox.sina.com/" title="财经">财经</a></li>
<li><a href="http://auto.firefox.sina.com/" title="汽车">汽车</a></li>
</ul>
<i class="iconfont icon-liebiao" id="menu">老王</i>
</div>
"""
from lxml import etree
html=etree.HTML(str) #创建一个html对象
result1=html.xpath("//a/text()") #获取所有a标签下的所有内容
print(result1)
result2=html.xpath("//a/@href") #获取所有a标签下的所有内容
print(result2)
result3=html.xpath("//li/a/text()") #获取标签下的内容
print(result3)
result4=html.xpath('//a[@id="channel"]/text()') #获取带属性的标签的内容
print(result4)
result5=html.xpath("//li[position()<4]/a/text()") #选前三项
print(result5)
result6=html.xpath("//li[1]/a/text()") #第一个
print(result6)
result7=html.xpath("//li[last()]/a/text()") #最后一个last()-1倒数第二项
print(result7)
result8=html.xpath("//i[contains(@class,'iconfont')]/text()") #class类中包含iconfont的取出来
print(result8)