【发布时间】:2017-07-20 14:41:28
【问题描述】:
我有一个场景,我正在尝试使用 selenium 和 python 从详细信息页面获取一些数据。我是 selenium 和 Python 的新手
我尝试使用 self.driver.execute_script("window.history.go(-1)")
返回上一页并开始获取 2,3、4 记录等,但问题是: 获取 1 条记录后,发生 Click 事件,它移动到详细信息页面并获取剩余数据但是,当它从详细信息页面向后移动到列表页面时,它会抛出错误
在 cmpname = selectAll.find_element_by_css_selector(".Capsuletitle h2")
抛出错误 StaleElementRefrenceException: Element is not attach to the page document
基本上,我想要的是我想要从两个页面获取数据的每条记录的列表页面和详细信息页面
这是我的循环代码部分
parentTab = self.driver.find_element_by_class_name("capsuleList")
for selectAll in parentTab.find_elements_by_class_name("bsCapsule"):
cmpname = selectAll.find_element_by_css_selector(".Capsuletitle h2")
print(cmpname.text)
address = selectAll.find_element_by_css_selector(".Capsuleaddress a span")
print(address.text)
telephone = selectAll.find_element_by_css_selector(".Capsuletel")
print(telephone.text)
selectAll.find_element_by_css_selector('.Capsuletitle div a').click()
time.sleep(20)
adrurl = self.driver.find_element_by_css_selector('.CapsulecallToAction a').get_attribute('href')
print(adrurl)
self.driver.execute_script("window.history.go(-1)")
time.sleep(20)
问候
【问题讨论】: