【发布时间】:2021-07-24 22:10:26
【问题描述】:
问题是当我通过 click() 下载文件时,它会打开一个新选项卡/窗口以启动下载,然后浏览器会自动关闭该选项卡/窗口。但是,当我想访问下载链接所在的上一个页面时,我收到错误“无效会话 ID”。
我在使用 Safari 进行自动化操作时收到错误“No such window exception”。
如果有人知道如何处理这个问题,我会很感激我能得到的所有帮助。谢谢大家!
我的代码如下,尝试点击file_dl2后出现错误
attachments = browser.find_element_by_id('sAttachments')
attachments.click()
time.sleep(2)
files = browser.find_element_by_xpath('//*[@id="FileListFI"]/div[1]')
files.click()
file_dl = browser.find_element_by_xpath('//*[@id="ctl00_chpDialog_hrefFileLink"]/img')
file_dl.click()
browser.implicitly_wait(10)
file_dl2 = browser.find_element_by_xpath('//*[@id="ctl01_chpDialog_hrefFileLink"]/img')
file_dl2.click()
【问题讨论】:
-
我们需要查看您当前的代码及其不工作的地方、完整的任何错误消息等。
-
根据您的描述:1)您在浏览器 #1 中的页面上并单击链接,2)该站点在浏览器 #2 中打开一个新窗口,该窗口下载文件然后关闭浏览器 #2 离开浏览器#1。如果是这种情况,您根本不必切换窗口。 Selenium 不会自动切换到新窗口等。您必须在要切换时告诉它。如果不是这种情况,请清楚地列出您的步骤,以便我们更好地了解您正在尝试做什么以及它在哪里停止工作。
-
@JeffC 我已经发布了上面的代码作为编辑。我没有用 selenium 切换任何窗口,但它仍然无法工作。
-
请将您的代码格式化为代码,您仍然需要清楚地解释步骤流程(用文字),以便我们理解场景。
-
如果可能的话分享网址..试试
标签: python google-chrome selenium-webdriver