请问lxml.etree中xpath("//div[class='test']")能不能匹配到class="test test2"的div?

0
请问lxml.etree中xpath("//div[@class='test']")能不能匹配到class="test test2"的div?
已邀请:
1

牟瑞 - 大数据 Hadoop 讲师 Hadoop入门课程地址:http://www.hellobi.com/course/39 有架构师,技术总监,CTO的职位请联系我! 2016-07-20 回答

你这种xpath肯定匹配不到的,可以使用contains关键字
# -*- coding: utf-8 -*-

from lxml import etree
html_doc = "<html><body><div class='test test2'><div class='test1 test2'></div></body></html>"
html = etree.HTML(html_doc)

div = html.xpath("//div[contains(@Class,'test1')]")

print div

如果html的文档比较大的话,使用contains的效果会有点低

要回复问题请先登录注册