特定のURLからHTMLコンテンツを読み取るための簡単なプログラムを試しています。この場合に試しているURLには、cookie / username / passwordは必要ありませんが、それでもio.IOExceptionが発生します:サーバーがHTTP応答コード:403エラーを返しました。誰かが私がここで間違っていることを教えてもらえますか?(SOにも同様の質問があることは知っていますが、役に立ちませんでした):
import java.net.*;
import java.io.*;
import java.net.MalformedURLException;
import java.io.IOException;
public class urlcont {
public static void main(String[] args) {
try {
URL u = new URL("http://www.amnesty.org/");
URLConnection uc = u.openConnection();
uc.addRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)");
uc.connect();
InputStream in = uc.getInputStream();
int b;
File f = new File("C:\\Users\\kausta\\Desktop\\urlcont.txt");
f.createNewFile();
OutputStream s = new FileOutputStream(f);
while ((b = in.read()) != -1) {
s.write(b);
}
}
catch (MalformedURLException e) {System.err.println(e);}
catch (IOException e) {System.err.println(e);}
}
}