我有此页面:
<html>
<head>
<title>Document Example</title>
</head>
<body>
<div id="container">
<div class="section">
<h1>Section 1</h1>
<li class="links">
<ul><a href="link.com/1"></a></ul>
<ul><a href="link.com/2"></a></ul>
<ul><a href="link.com/3"></a></ul>
</li>
</div>
<div class="section">
<h1>Section 2</h1>
<li class="links">
<ul><a href="link.com/4"></a></ul>
<ul><a href="link.com/5"></a></ul>
<ul><a href="link.com/6"></a></ul>
</li>
</div>
<div class="section">
<h1>Section 3</h1>
<li class="links">
<ul><a href="link.com/7"></a></ul>
<ul><a href="link.com/8"></a></ul>
<ul><a href="link.com/9"></a></ul>
</li>
</div>
</div>
</body>
</html>
我想要按部分分组链接:
driver.get("mypage.com")
sections = driver.find_elements_by_xpath("//div[@class='section']")
for section in sections:
section_name = section.find_element_by_xpath("//h1[@class='name']").get_attribute('innerHTML') #This fails
links = section.find_elements_by_xpath("//ul/a") #This find all links in page, not only links in section
问题是,我通过xpath找到了所有页面中的元素列表(WebElement),现在我想通过xpath查找元素部分而不是所有页面中的所有特定元素。
怎么了?
编辑1
这样可以解决问题(现在是xpath启动白点。):driver.get(“ mypage.com”)
sections = driver.find_elements_by_xpath("//div[@class='section']")
for section in sections:
section_name = section.find_element_by_xpath(".//h1[@class='name']").get_attribute('innerHTML') #This fails
links = section.find_elements_by_xpath(".//ul/a") #This find all links in page, not only links in section
在这里可以找到以下解释:http : //selenium-python.readthedocs.io/api.html#selenium.webdriver.remote.webelement.WebElement.find_element_by_xpath
莫回无
神不在的星期二
相关分类