我正在编写一个 webcrawer 类型的程序,连同 html,我需要下载图像、swf 等以使其离线可用。
之前有人提供了一些非常有用的信息,关于下载文件:
import static org.apache.commons.io.FileUtils.copyURLToFile;
public static void Download() {
URL dl = null;
File fl = null;
try {
fl = new File(System.getProperty("user.home").replace("\\", "/") + "/Desktop/Screenshots.zip");
dl = new URL("http://example.com/uploads/Screenshots.zip");
copyURLToFile(dl, fl);
} catch (Exception e) {
System.out.println(e);
}
}
效果很好,但是,有些网站给了我一个 403 块。在做了一些研究之后,我发现这在很大程度上是网站限制机器人下载的尝试。Java中有解决方法吗?显然,您需要将其作为 HTTP 请求发送,而不是使用我拥有的代码。
例如,对我不起作用的链接是:http: //images.4chan.org/v/src/1340901798824.jpg
提前致谢!