2015-11-17 48 views
2

我必须使用python中的xpath分析以下html内容。我必须得到的内容是style-tag的内容。如何使用xpath获取样式标签内容

<div class="chartBody"> 
    <div class="chartRow"> 
     <div class="chartLabel">Certificate</div> 
      <div class="chartBar_g" style="width:300px">&nbsp;</div> 
    </div> 
    <div class="chartRow"> 
     <div class="chartLabel">Protocol Support</div> 
      <div class="chartBar_a" style="width:210px">&nbsp;</div> 
    </div> 
</div> 

包含style标签的类是不同的。 大家可以告诉我xpath字符串,以获取列表中的所有样式内容吗?

+0

你是否真正限于用XPath和什么样的工具你有限吗?使用美味汤或硒的任务相对简单,但我们需要了解更多选择合适的工具 – AudreyM

回答

1

enter code here 1)搜索具有style属性的元素,如:

element = driver.find_element_by_class("chartBar_g") 

2)获得的样式属性:

element.get_attribute("style") 

这里是你如何能得到 “全” div具有样式属性的元素

elements = driver.find_elements_by_xpath("//div[@style]") 

那么你可以通过元素循环和申请什么我按照步骤2

0
import html5lib 

str = yourHtml 
html_parser = html5lib.HTMLParser(tree=html5lib.treebuilders.getTreeBuilder("lxml"), namespaceHTMLElements=False) 
page = html_parser.parse(str, encoding="utf-8") 
page.xpath("//div[@class = 'chartBar_g']//@style") 

输出为: [“宽度:30PX”]

相关问题