gpt4 book ai didi

javascript - Java 通过下载对话框从 url 下载文件

转载 作者:行者123 更新时间:2023-12-01 13:10:49 24 4
gpt4 key购买 nike

我想从一个网址下载一个文件,该网址最初显示一些 html,然后在 2-3 秒后显示一个下载对话框。显然,如果我这样做:

     try {
URL url = new URL("http://my.url");
HttpURLConnection con = (HttpURLConnection) url.openConnection();

con.setRequestProperty("Connection", "Keep-Alive");
con.setRequestProperty("Content-Length",
Integer.toString(Integer.MAX_VALUE));
con.setReadTimeout(Integer.MAX_VALUE);
con.setConnectTimeout(Integer.MAX_VALUE);
con.connect();

bis = new BufferedInputStream(con.getInputStream(), 4096);

byteArray = IOUtils.toByteArray(bis);

FileUtils.writeByteArrayToFile(new File("myFile"), byteArray);


} catch (Exception e) {
}

我将保存显示的 .html,而不是保存对话框中显示的文件。我应该如何更改代码才能做到这一点?

最佳答案

我猜测该对话框只是有一些 javascript,它会等待几秒钟并请求嵌入在对话框某处的文件下载。

如果是这种情况,如果您弄清楚“真实下载”包含在哪个元素中,则可以使用 JSoup 或任何其他 html 解析器库将链接从页面中抓取出来。

显然,只有当下载链接是动态生成时才需要这样做。

按照 rossa 的建议进行操作后,我建议在对话框窗口中设置 JavaScript 断点,以弄清楚实际的 url 是如何被请求的。

关于javascript - Java 通过下载对话框从 url 下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22885484/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com