2013-10-29 9 views
14

Ich versuche, die Daten von der Webseite hat die html in unterSelen, wie der Inhalt href innerhalb einiger gezielt Klasse erhalten

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

Mein Ziel ist es abrufen zu analysieren „#/Wort/1 /“ Was ich getan habe ist

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

aber die Ausgabe sind

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

ich so viele Möglichkeiten ausprobiert, so scheint es ther Es ist keine Möglichkeit, den Inhalt von 'a href' innerhalb der Zielklasse zu erhalten.

ich wirklich tun möchte nicht, ist der Quellcode der Seite zu erhalten, und dann einen String tun suchen, die stumm scheint ....

trotzdem, dass zu bekommen?

+2

Warum sind Sie nicht mit dem tatsächlichen Ankerelement bekommen ? 'anchorElement = target.find_element_by_tag_name ('a')' ... kannst du dann .... 'printer anchorElement.get_attribute (" href ")' .... right ....? – Arran

Antwort

30

Soweit ich bin mir bewusst, Sie

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

Dies sollte es für Sie tun das href durch die Suche durch die untergeordneten Elemente erhalten können:

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