我有一个网页,其中有多个链接和子链接流如下
要单击子元素(2,7,8等等…,我正在使用driver.find_elements_by_xpath
(所有子链接都可以通过class&div组合找到),如果我有多个链接(从技术上讲,每个子元素都有一个嵌套的for循环)。是否可以将其优化为函数,如递归深度优先搜索?下面是我尝试过的代码片段
def iterate_child_links():
elements = driver.find_elements_by_xpath(childpath)
element_count = len(elements)
single_element = driver.find_element_by_xpath(childpath)
if element_count == 1:
single_element = driver.find_element_by_xpath(childpath)
single_element.click() # JUST TO CLICK AND PROCEED TO THE NEXT
elif element_count > 1: # LOOP FOR EACH CHILD
splitnode_paths.append(driver.current_url)
elements = driver.find_elements_by_xpath(childpath)
for j in elements:
x = driver.find_element_by_xpath(childpath)
text = x.get_attribute('innerHTML')
print(text)
splitnode_paths.append(text)
for k in range(element_count):
html_text = elements[k].get_attribute('innerHTML')
if (html_text in splitnode_paths):
elements[k + 1].click()
else:
elements[k].click()
目前没有回答
相关问题 更多 >
编程相关推荐