天天看點

selenium中關于 stale element reference:element is not attached to the page document的解決辦法

     有時候在執行程式時會遇到如下報錯内容: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一下,保證每個循環都能完美執行。

繼續閱讀