java - 如何在 java 中使用 Selenium Webdriver 计算下载文件大小、状态、剩余时间和传输率

标签 java selenium selenium-webdriver

我编写了一个脚本,使用 Java 中的 Selenium Webdriver 从网站下载文件。我可以从网站下载文件,但我想添加更多有关下载文件的信息,例如文件大小、状态、剩余时间和传输率。

这是我的java代码:

public class Downloadfile {

public static void main(String[] args) throws MalformedURLException, IOException {

    List<String> uniqurl = new ArrayList();

    // Initialize Webdriver driver   
    WebDriver driver = new HtmlUnitDriver();
    // Go to pdf page  
    driver.get("http://www.banglakitab.com/MaulanaNurulIslamOlipuri.htm");
    // get all page urls  
    List<WebElement> urllist = driver.findElements(By.tagName("a"));

    for (WebElement elemnet : urllist) {
        String downloadfileurl = elemnet.getAttribute("href").trim();
        //check mp3 url  
        if (downloadfileurl.contains(".mp3")) {
            // check  unique download file 
            if (!(uniqurl.contains(downloadfileurl))) {
                uniqurl.add(downloadfileurl);
                File file = new File(downloadfileurl);
                //print file name 
                System.out.println(file.getName().replaceAll("%20", " "));

                //download file  
                URL url = new URL(downloadfileurl);
                InputStream in = new BufferedInputStream(url.openStream());
                OutputStream out = new BufferedOutputStream(new FileOutputStream(file.getName().replaceAll("%20", " ")));

                for (int i; (i = in.read()) != -1;) {
                    out.write(i);
                }
                in.close();
                out.close();

            }
        }
    }

    // close driver    
    driver.quit();

  }
}

如何计算下载文件大小、状态、剩余时间和传输速率。

最佳答案

URLConnection connection = url.openConnection();
long aFileLength = connection.getContentLengthLong();

对于其他东西,谷歌:java文件下载监控进度

希望这有帮助。

关于java - 如何在 java 中使用 Selenium Webdriver 计算下载文件大小、状态、剩余时间和传输率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35740699/

相关文章:

java - XML 命名空间如何在没有工作网络连接的情况下工作?

java - Bean 验证 @Positive 指令不适用于 Integer @PathVariable

Java 正则表达式验证特殊字符

java - WebElement.findElement 未找到子元素

python - Selenium Python - headless Chrome 不复制到剪贴板

javascript - 如果使用 Selenium-webdriver 和 Java 在 div 中定义了 SELECT 列表,如何单击选项

java - getParameter 对于 post 和 get 操作的行为是什么?

RSelenium:查找与 Xpath 的链接

java - org.testng.TestNGException : Cannot find class in classpath

firefox - Selenium WebDriverException : Reached error page