2013-12-14 71 views
1

在Python中使用Selenium,我想下載一個頁面,並保存特定div的HTML代碼,該代碼的標識爲id。我有以下情況:在python中使用selenium獲取特定div的HTML代碼

from selenium.webdriver import Firefox 
from selenium.webdriver.support.ui import WebDriverWait 

... 

with closing(Firefox()) as browser: 
    browser.get(current_url) 

WebDriverWait(browser, timeout=3).until(lambda x: x.find_element_by_id('element_id')) 

element = browser.find_element_by_id('element_id') 

elementselenium.webdriver.remote.webelement.WebElement型。有沒有辦法從element獲取HTML代碼(沒有以任何方式處理)?使用Selenium有沒有更好的方法來完成這項任務?

+0

是否必須是硒? –

+0

我正在尋找一個專門使用硒的解決方案。謝謝。 – Lamps1829

回答

3

右鍵從pydoc selenium.webdriver.remote.webelement.WebElement

| text 
|  Gets the text of the element. 

使用.text屬性。

如果你真的是元 的HTML源代碼後,再請參閱:Get HTML Source of WebElement in Selenium WebDriver using Python

如上所述,它不是直線前進,只要你願意。

+0

text屬性生成可見文本(即查看頁面時看到的內容)而不是HTML代碼。 – Lamps1829

+0

查看更新的回覆。 –

+1

來自上面鏈接的線程的這個回覆的變體照顧了它:elem = driver.find_element_by_xpath(「// *」); source_code = elem.get_attribute(「innerHTML」)。謝謝! – Lamps1829

相關問題