2014-11-06 58 views
1

我有以下HTML:的Python:XPath來抓住從元素文本中跨度

<span class="time" data-time="2014-11-06T22:00:00.000+0000">10'</span> 

而且我得到它與Python代碼:

import requests 
from lxml import html 

page=requests.get('http://www.url.com/data') 
tree=html.fromstring(page.text) 
empty=tree.xpath('//*[@id="stuff"]/div[1]/div[6]/div[1]/div/div/div/div[3]/span/text()') 

,我的麻煩具有這是返回這個特定元素的空列表。該元素是一個在網站上動態更新的計時器,它看起來不像text()調用正在做什麼。

任何幫助表示讚賞!

回答

1

明白了:在text()調用之前添加了一個額外的'/'。所以它讀取「.../div [3]/span // text()」,它選擇所有的後代文本。花了相當一段時間的搜索後(之前的帖子,相信你我),我確實最終在這裏找到幫助Get text content of an HTML element using XPath?

我會留下來幫助其他人在未來。

+0

有沒有人知道爲什麼在這種情況下需要額外的斜槓? – 2016-05-25 16:05:03