Мне удалось скачать файл с помощью Selenium. Но Firefox автоматически переименовывает файл, добавляя 1,2,3 .. к именам файлов, поскольку каждый файл, отправленный сервером, имеет то же имя. Но я хочу переименовать файлы на основе текущей даты & времени. Итак, попробовал:Сделать Selenium ждать завершения загрузки файла
Начать загрузку файла-> скачатьLink.click();
While (НЕ файл-С-оригинальное имя существует или < имя файла > .part существует) {}
Thread.sleep(2000);
Переименуйте загруженный файл в нужное имя.
Но он переименовывает некоторые файлы. И некоторые из них имеют длину 0, а последний файл даже не переименован. Я думаю, это связано с тем, что мой код продолжается после загрузки и не проводит опрос в цикле while. Что мне делать ? Заранее спасибо.
Сначала вы можете удалить с вашего диска файл, чтобы избежать автоматического переименования firefox, а затем, если вы знаете размер файла, вы можете проверить его на своем цикле. – Morvader
Я могу «переместить» (не удалять) файл только после завершения загрузки, и мой вопрос в том, как я узнаю, что он завершен? –
Знаете ли вы Размер файла ?. Если вы это знаете, вы можете добавить это условие к циклу while. Подождите, пока файл не появится и достигнет этого размера – Morvader