如何使用selenium web driver c#获取文件下载完成状态

时间:2016-03-09 12:17:41

标签: selenium-webdriver

我正在使用selenium web驱动程序编写一个自动化脚本,用于从Mozilla fire fox中的网站逐个下载多个文件。我已成功下载第一个文件,下次需要等待下载完成。任何人都可以使用c#selenium web驱动程序来帮助识别正在进行的下载。由于我没有获得下载完成状态,我无法继续下载下一个文件。

1 个答案:

答案 0 :(得分:12)

假设您正在测试Firefox中的文件下载,如上所述。这是一种实现您想要的方法。

  1. 在Firefox中打开新窗口/标签,然后导航至' about:downloads'直。 即driver.Navigate().GoToUrl("about:downloads"); 您将获得下载列表(即已下载的文件和当前正在下载的文件。) 您必须在站点选项卡和下载选项卡之间切换。

  2. 现在,在下载标签上,查看HTML,您可以使用状态属性轻松查找正在进行的下载。

  3.   

    例如,对于列表中的第一个文件,如果state =" 0"和/或状态   包含文本'剩余',表示正在下载正在进行中

         

    所以你可以等到状态变为state = 1和/或状态不包含>文本'剩余'

    请参阅随附的屏幕截图。 enter image description here

    我在这里给出的解释看起来非常高,但我相信这种方法会起作用。这也很简单。

    如果您对此有任何疑问,请与我们联系。