如何使用 Selenium 函数 back() 并且我在 Python 中丢失了我的变量?

How to use Selenium function back() and I loss my variable in Python?

我是 Python 的新手。

我在 Python 中遇到了一个大问题!!

我访问一个网站并将下拉列表中的大约 200 个选项放入数组中。

我想单击数组中的每个选项,然后单击 javascript 按钮提交。

从该页面获取我想要的内容并返回上一页单击另一个选项。

在 for 循环中执行这些操作大约 200 次。

代码如下:

for option in arrName:
    if count > 0:
        option.click()
        string = u'Something'
        link2 = browser.find_element_by_link_text(string.encode('utf8'))
        link2.click()
        //"do something I want"
        browser.back()
    count = count +1

在此代码中,我不想使用第一个选项。

问题来了,程序点击第二个选项后,点击link2,然后browser.back(),它回答我:

` StaleElementReferenceException: Message: stale element reference: element 
is not attached to the page document

也就是说数组中的选项消失了?

for循环中browser.back()时数组中的选项应该如何使用?

谢谢

是的,这是因为 DOM 刷新。您不能简单地遍历数组并来回单击。最好的选择是在运行时找到元素,然后单击。避免使用 option.click(),而是使用 find_element 查找下一个元素。如果您不确定如何完成,请提供 html