2014-09-29 162 views
0

快速的從網站上刮取文本的麻煩。我是使用lxml的新手,並花了很長時間試圖從特定網站上刮取文本數據。該元件結構如下圖所示:使用lxml/xpath()

http://tinypic.com/r/2iw7zaa/8

我想要做的是提取物,突出顯示區域內顯示的100,100。我已經試過陳述包括(我保存的網站的源到一個文本文件來測試,test.txt的 - 也試圖與HTML擴展名):

from lxml import html 
tree = html.parse(test.txt) 
#value = tree.xpath('//*[@id="content"]/table[4]/tbody/tr[1]/td[2]') 
#value = tree.xpath('//*[@id="content"]/table[4]/tbody/tr[1]/td[2]/text()') 

我似乎得到的結果是空列表[],任何幫助將不勝感激。

ps我評論了兩個價值陳述,因爲我展示了我所嘗試的。我嘗試了一堆與上面類似的其他xpath語句,但是它們在python shell崩潰時丟失了。

pps。道歉的圖片鏈接 - 由於代表我不能直接張貼圖片。

+0

可能的重複[爲什麼我的XPath查詢(抓取HTML表)只能在Firebug中工作,但不是我正在開發的應用程序?](http://stackoverflow.com/questions/18241029/why-does-my -xpath-query-scraping-html-tables-only-work-in-firebug-but-not-the) – 2014-10-12 17:36:41

回答

1

嘗試從xpath中刪除'/ tbody'。

瀏覽器可能正在添加`/ tbody'標籤,而它可能不會出現在原始HTML中。

閱讀全文herehere

+0

感謝隊友,工作。很奇怪,因爲我以爲我已經嘗試刪除它。 – Sighonide 2014-09-29 23:48:18