2013-06-22 9 views
5

Ich versuche, "Home" Text vonGet Text von Link - Selen Python

<li class="active"><a href="#">Home</a></li> 

zu bekommen habe ich versucht,

element = self.browser.find_element_by_class_name('active') 
print element.find_element_by_tag_name('a').text 

aber es gibt leere Zeichenfolge zurück. Was fehlt mir hier?

Antwort

6

es mit CSS Do - .find_element_by_css_selector("li.active a") oder mit XPath .find_element_by_xpath("//li[@class='active']/a")

Also das ist, wie es

element = self.browser.find_element_by_css_selector("li.active a") 
print element.text 
+1

Ok schließlich möchte ich endlich den wahren Grund meines Problems gefunden. Ich benutze http://twitter.github.io/bootstrap/ framework und wenn das Browserfenster klein ist, blendet es das Menü aus und deshalb habe ich einen leeren Text bekommen. Das Hinzufügen von maximize_window() löste mein Problem. @amey danke für deine Antwort immer noch sehr hilfreich, da ich ein Selen Anfänger bin. – krisk

+0

Ich hatte ein ähnliches Problem mit OP, ich habe versucht, Links zu referenzieren, die Teil eines Untermenüs waren und deshalb nicht auf dem Bildschirm sichtbar waren. Als ich die notwendigen Aktionen durchführte, um sie sichtbar zu machen, konnte ich den Text lesen. – AdamMc331