我需要自动从页面下载带有多个链接的文件(可能有超过100个带有单独链接的文件)。我知道登录的URL,我有凭据。
我愿意通过自动化在Java程序中这样做。转到下载位置页面的唯一方法是登录该站点。
cURL命令对此有帮助吗?
请告诉我这样做。
答案 0 :(得分:1)
您可以使用可以下载日志文件的wget:
wget -r --no-parent --user=user --password=password --no-check-certificate <URL>
或者您可以在java中使用以下HttpClient:
public void saveFile(String url, String FileName) throws ClientProtocolException, IOException{ HttpGet httpget = new HttpGet(url); HttpResponse response = httpClient.execute(httpget); HttpEntity entity = response.getEntity(); if (entity != null) { long len = entity.getContentLength(); InputStream is = entity.getContent(); FileOutputStream fos = new FileOutputStream(new File(filePath))); IOUtils.copy(is, fos); } return; }
答案 1 :(得分:0)
如果您要将文件从站点复制到本地文件,则可以使用java.nio.file
Files.copy(new URL("http://host/site/filename").openStream(), Paths.get(localfile)