2013-10-29 34 views
14

我試圖找回從網頁數據中的href的內容有以下硒如何讓一些有針對性類

 <div class="someclass"> 
     <p class="name"><a href="#/word/1/">helloworld</a></p> 
     </div> 

我的目標是解析HTML「#/字/ 1 /」 我所做的是

 target = self.driver.find_element_by_class_name('someclass') 
     print target 
     print target.text 
     print target.get_attribute("[email protected]") 
     print target.tag_name 

但輸出是

<selenium.webdriver.remote.webelement.WebElement object at 0x10bf16210> 
helloworld 
None 
div 

我試了很多方法,似乎療法我無法獲得目標課堂內'a href'的內容。

我真的不想做的就是在網頁的源代碼,然後做一個字符串搜索,這似乎是愚蠢的....

反正明白了嗎?

+2

你爲什麼沒有得到實際的錨元素? 'anchorElement = target.find_element_by_tag_name('a')'......你可以這樣做......'print anchorElement.get_attribute(「href」)'.... right ....? – Arran

回答

30

據我所知,您可以通過子元素搜索

div = self.driver.find_element_by_class_name('someclass') 
div.find_element_by_css_selector('a').get_attribute('href') 
7

這應該爲你做它得到的href:

self.driver.find_element_by_css_selector('.someclass a').get_attribute('href')