• ベストアンサー

javaから拒否されるページ

javaでWebページからソースをとってきたい のですが、javaからのアクセスは拒否されるらしいです。 どうしたら良いでしょうか? ソースをとってくるのは、URLクラスのopenStream メソッドを使っています。 お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • davosuke
  • ベストアンサー率61% (34/55)
回答No.2

こちらで試しに調査した結果、 IOExcepitionのエラーが見られませんでした。 調査ソース import java.net.URL; import java.net.URLConnection; import java.io.InputStream; import java.io.IOException; public class Test_main { public static void getUrl(String strUrl){ int nLabel = 0; try{ nLabel = 100; System.out.println(" targeturl "+strUrl); URL objURL = new URL(strUrl); nLabel = 200; URLConnection objURLCnn = objURL.openConnection(); nLabel = 300; InputStream inputStream = objURLCnn.getInputStream(); nLabel = 400; return; }catch(IOException ioe){ System.out.println(nLabel); ioe.printStackTrace(); } } public static void main(String[] args) { String strUrl = "http://blog.goo.ne.jp/index.php?fid=freshEntryRss"; // String strUrl = "http://www.yahoo.co.jp"; getUrl(strUrl); return; } } 存在しないURLを入力するとエラーが返ってきたが 目的のURL(http://blog.goo.ne.jp/index.php?fid=freshEntryRss)ではエラーがおきなかったので ほかに原因があると思います。 原因のソースの見て判定したいですね。

Judau_MSZ-010
質問者

お礼

ありがとうございます。

その他の回答 (1)

  • davosuke
  • ベストアンサー率61% (34/55)
回答No.1

openStreamは (1)URLConnection URL.openConnection(); (2)URLConnection.getInputStream(); の短縮メソッドなので、どちらから拒否されているか、確かめて下さい。 javaからのアクセスは拒否されるらしいです。 とありますが、IOExceptionが返ってくるのか、別のエラーなのかわからないのでどのような事象で拒否されるか明確に教えてください。 最後に、拒否されるページが明確にしてもらえるとありがたいです。特定のページでは必ずか、定期的に起こるのか 特定のページだったらURLも教えてください。

Judau_MSZ-010
質問者

補足

ありがとうございます。 % java rss http://blog.goo.ne.jp/index.php?fid=freshEntryRss java.io.IOException: Server returned HTTP response code: 403 for URL: http://blog.goo.ne.jp/index.php?fid=freshEntryRss というのが帰ってきます。 読みたいのは、rssのソースファイルなのです。 お願いします。

関連するQ&A

専門家に質問してみよう