selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {\”method\”:\”xpath\”,\”selector\”:\”//*[@id=\”js_msgSender\”]/a\”}
确认过xpath表达式正确无误时selenium仍然找不到元素时一般很有可能是前面使用过.click()方法,浏览器会新开一个tab,然而当前selenium焦点仍然保留在原有页面tab当中
因此只要在.click()操作后加一行:
driver.switch_to_new_tab()
焦点跳转到新tab就ok
这种错误尤其在命令行执行时会爆出,IDE调试测试阶段会有可视化浏览器实际操作,不容易暴露。命令行下不会有可视化浏览器操作,错误就产生了