我設法用Selenium無聲下載文件。但是,由於服務器發送的每個文件具有相同的名稱,因此Firefox會自動爲文件重命名該文件。但我想根據當前日期&時間重命名文件。所以,試過:讓Selenium等待文件下載完成
開始下載文件 - > downloadLink.click();
雖然(不是文件與 - 原名稱存在,或<名>。部分存在) {}
Thread.sleep(2000);
重命名下載的文件,所需的名稱。
但它重命名了一些文件。有些長度爲0,最後一個文件甚至沒有重命名。我認爲這是因爲我的代碼在下載後繼續,並且在while循環中不輪詢。我該怎麼辦 ?提前致謝。
首先,你可以從你的磁盤上刪除文件,以避免firefox自動重命名,然後,如果你知道文件的大小,你可以在你的循環中檢查它。 – Morvader
我只能在下載完成後「移動」(不刪除)文件,我的問題是如何知道它已完成? –
你知道文件的大小嗎?如果你知道它,你可以將這個條件添加到while循環中。等到文件存在並達到那個尺寸 – Morvader