有時候在執行程式時會遇到如下報錯内容:stale element reference:element is not attached to the page document。
原始程式:
modules=browser.find_element_by_xpath('//*[@id="sidebar"]/div[2]').find_elements_by_tag_name('li')
time.sleep(2)
for i in range(len(modules)):
time.sleep(3)
module=modules[i].text
就多加了一行,相當于重新擷取一次xpath位址:
modules=browser.find_element_by_xpath('//*[@id="sidebar"]/div[2]').find_elements_by_tag_name('li')
time.sleep(2)
for i in range(len(modules)):
time.sleep(3)
modules = browser.find_element_by_xpath('//*[@id="sidebar"]/div[2]').find_elements_by_tag_name('li')
module=modules[i].text
主要思路就在于,看報錯資訊是哪一行,就在那一行前面重新定位一下元素即可,如果有循環存在,适當sleep一下,保證每個循環都能完美執行。