# ancestor:所有祖先节点print("祖先节点")
result = html.xpath('//li[1]/ancestor::div[@id="container1"]')print(result)# attribute:所有属性print("所有属性")
result = html.xpath('//li[1]/attribute::*')print(result)# child:所有的直接子节点print("所有的直接节点")
result = html.xpath('//li[2]/child::*')print(result)# descendant:所有的子孙节点print("所有子孙节点")
result = html.xpath('//ul/descendant::a/text()')# //ul只会选择第一个ul,而li[1]会选择同级别所有第一个li标签print(result)# following:当前节点后的所有节点print("当前节点后的所有节点")
result = html.xpath('//li[1]/following::*/text()')print(result)# following-sibling:当前节点后所有同级节点print("当前节点后的所有节点")
result = html.xpath('//li[1]/following-sibling::*//text()')print(result)