2013-06-22 15 views
5

Próbuję uzyskać "Home" tekst zGet tekst link - selen python

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

Próbowałem

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

ale zwraca pusty ciąg. Czego tu mi brakuje?

Odpowiedz

6

zrobić to za pomocą CSS - .find_element_by_css_selector("li.active a"), lub za pomocą XPath .find_element_by_xpath("//li[@class='active']/a")

Tak to jest jak chciałaby wreszcie

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

Ok końcu znalazłem prawdziwy powód mojego problemu. Używam http://twitter.github.io/bootstrap/ framework i gdy okno przeglądarki jest małe, ukrywa menu i dlatego mam pusty tekst. Dodanie maxim_window() rozwiązało mój problem. @amey dzięki za odpowiedź nadal bardzo pomocne, ponieważ jestem początkującym selenem. – krisk

+0

Miałem podobny problem z OP, próbowałem odwoływać się do linków, które były częścią podobnego menu, i dlatego nie były widoczne na ekranie. Kiedy wykonałem niezbędne czynności, aby były widoczne, mogłem przeczytać tekst. – AdamMc331

Powiązane problemy