2016-09-12 86 views
0

我想從一個網站提取數據使用美麗的湯來解析HTML。我目前正試圖從以下網頁獲取表中的數據:美麗的湯缺少一些html表標籤

link to webpage

我想從表中獲取數據。首先,我的頁面保存爲我的計算機上的HTML文件(這部分工作得很好,我檢查,我把所有的信息),但是當我嘗試用下面的代碼解析:

soup = BeautifulSoup(fh, 'html.parser') 
table = soup.find_all('table') 
cols = table[0].find_all('tr') 
cells = cols[1].find_all('td')` 

我不明白任何結果(特別是崩潰,說索引1沒有元素)。想知道它可能來自哪裏?

感謝

+0

適用於我,你確定你正在解析正確的HTML文件嗎? – alecxe

+0

我在第3行看到'table'和'[0]'之間的空格。另一方面,我之前也有過類似的問題,我發現當html被深度鑽取時,Beautiful Soup無法處理它。我試過不同的'html parser',但找不到解決方案。 – Leustad

+0

我很確定我正在解析正確的HTML文件,至少當我在記事本中打開它看起來是正確的。 關於空間這是一個錯別字抱歉,但沒有出現在我的代碼。 – aeboq

回答

0

好吧實際上這是在HTML文件中的問題,在第一線的HTML標籤被打開了與日但TD關閉。我對HTML不太瞭解,但用td取代了th解決了這個問題。

<tr class="listeEtablenTete"> 
<th title="Rubrique IC">Rubri. IC</td> 
<th title="Alin&eacute;a">Ali.&nbsp;</td> 
<th title="Date d'autorisation">Date auto.</td> 
<th >Etat d'activit&eacute;</td> 
<th title="R&eacute;gime">R&eacute;g.</td> 
<th >Activit&eacute;</td> 
<th >Volume</td> 
<th >Unit&eacute;</td>` 

謝謝!