2013-03-21 72 views
0

請原諒我缺乏相關知識,但給出以下格式的HTML,提取單個數據字段的最佳方法是什麼?請記住,在這種情況下,我們會將它們保持爲NULL,而且它們中的一些或全部通常都是NULL。用Python提取HTML數據字段

<div class="profile-section" id="a-bit-more-about"> 
          <dl> 
      <dt>Name:</dt> 
      <dd><span class="given-name">Clem</span> <span class="family-name">Kadiddlehopper</span></dd> 
     </dl> 
     <!-- <span class="RealName">/ <span class="fn n"><span class="given-name">Clem</span> <span class="family-name">Kadiddlehopper</span></span></span> --> 
         <dl> 
     <dt>Joined:</dt> 
     <dd>September 1910</dd> 
    </dl> 
    <div class="sep"></div> 
    <dl> 
     <dt>Hometown:</dt> 
     <dd>Quiet Rest Maximum Security Twilight Home</dd> 
    </dl> 
    <dl> 
     <dt>Currently:</dt> 
     <dd><span class="adr"><span class="locality">They won't tell me</span>, <span class="country-name">Zimbobwe</span></span></dd> 
    </dl> 
    <div class="sep"></div> 

回答

2

使用第三方模塊美麗的湯,lxml或內置模塊html.parser。例如:

from bs4 import BeautifulSoup 
soup = BeautifulSoup('<html><body><a>bbb</a></body></html') 
soup.find('a') 

或者如果喜歡,你可以使用正則表達式的小目標。

+0

我終於得到了正則表達式來做我需要的東西,至少在大多數情況下,謝謝! – 2013-03-22 01:12:41

3

你想要一個HTML解析器。我推薦beautiful souplxml.

+0

是的,我有兩個,我只是沒有理清如何正確使用它們。 :( – 2013-03-22 01:15:13