首页 > 解决方案 > 获取 selenium.common.exceptions.InvalidSessionIdException:消息:无效会话 ID

问题描述

当我尝试从 try 块中定义的函数调用内部查找 CheckboxClick Web 元素时,以及当我将代码行置于函数外部时,我收到selenium.common.exceptions.InvalidSessionIdException 错误:消息:无效会话 ID并尝试阻止它不会给我任何错误。

代码行

try:
    def getrecordsoNpage():
        **CheckBoxclick = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#workflow_table > thead > tr > th.first.checkbox-column.checkbox > input"))).click()**
        RecordsonOnePage = int(driver.find_element_by_css_selector('#wf_table_footer > form.inline.pull-left > div > label > span').text)
        pprint.pprint(RecordsonOnePage)

        totalnofpages = math.ceil(TotalNofRecord / RecordsonOnePage)
        print(totalnofpages)
        return RecordsonOnePage,totalnofpages

except RuntimeError as e:
    pprint.pprint(e)
finally:
    driver.close()
    # driver.quit()

RecordsonOnePage,totalnofpages = getrecordsoNpage()
pprint.pprint(RecordsonOnePage,totalnofpages)

有人可以建议它为什么会这样以及我可以纠正的方法,即我搜索了 Invalid session-id 错误并尝试处理 session id 但得到了如上所述的错误。

标签: pythonseleniumselenium-webdriverwebdriverwaitsessionid

解决方案


我已经在 Try 块中删除了我的函数,并将 try 块放在了我的函数中,它有助于纠正该错误,而且是在关闭驱动程序后使用驱动程序时出现错误的主要原因。


推荐阅读