2016-08-30 79 views
0

這是一個不尋常的問題。我正試圖從某個網站提取表格(因爲安全原因,不能提供鏈接)。問題是,當通過網站訪問時,網站會加載表格,但是當我們在該表格上的任何值/表格上使用inspect element時,它是不可見的。它只顯示<html>_</html>裏面的一些腳本和鏈接。最初我嘗試使用beautifulsoup來提取表格,但它不成功。然後我用熊貓 pandas.read_html(html)但該網站包含多個表和它的輸出是這樣的使用pandas read_html函數提取表格?

[  Code     Name 
0 A      John 
1 B      Terry 
2 C      Kitty 


    Column 1 Column 2 Column 3 
0  1 0.6173661242 8 
1  2 0.7232098163 20 
2  3 0.9954581943 39 
3  4 0.5595425507 18 
4  5 0.9644025159 20 
5  6 0.3914102544 29 
6  7 0.0154642132 49 

.... 

[873 rows x 3 columns], 

0\n\t\t\t\t\t\t\t\t\t 
0             0 ] 

然後我試圖像這樣pandas.read_html(html, match="Column 1")返回該錯誤

ValueError: No tables found matching pattern 'Column 1'

任何想法如何,我們可以使用read_html來提取表?

+2

你也許可以索引到你想要的特定表。它看起來像你想要的第二個表(?)所以你可以做'df = pd.read_table(url)[1]' –

+0

它只是輸出整個網站。我認爲該網站(安全)使用其他方式來輸出表,而不是使用普通的表格html標籤。 – Eka

+0

當你做了'pd.read_table(html)'你回來的列表的長度是多少? –

回答

0

當數據颳去一個安全的網站,該網站可以使用Java來加載表,所以你永遠也看不到HTML風格的代碼。這可能是爲什麼BeautifulSoup沒有返回任何東西。

「腳本和鏈接裏面」是否看起來像Java?

也許看看Selenium?