Selenium Webdriver finding an element in a sub-element
Solution 1:
If you start an XPath expression with //
, it begins searching from the root of document. To search relative to a particular element, you should prepend the expression with .
instead:
element2 = driver.find_element_by_xpath("//div[@title='div2']")
element2.find_element_by_xpath(".//p[@class='test']").text
Solution 2:
Use the following:
element2 = driver.find_element_by_cssselector("css=div[title='div2']")
element2.find_element_by_cssselector("p[@class='test']").text
Please let me know if you have any problems.