2015-11-17 49 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」]

相關問題