私は自分のJavaコードを使っていくつかのURLの内容を取得しようとしています。このコードは、いくつかのURLのコンテンツを返します。たとえば、 "http://www.nytimes.com/video/world/europe/100000004503705/memorials-for-victims-of-istanbul-attack.html" などです。他のURLでは何も返しません。たとえば、次のようになります。 "http://www.nytimes.com/2016/07/24/travel/mozart-vienna.html?_r=0" 手動でURLをチェックすると、コンテンツが表示され、ソースを表示してもページの構造に特別な違いはありません。しかし、私はまだこのURLのために何も得ていない。なぜ私のJavaコードがいくつかのURL(ウェブページ)の内容を取得できるのですか?
権限の問題やウェブページやJavaコードの構造に関連していますか?
は、ここに私のコードです:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
public class TestJsoup {
public static void main(String[] args) {
System.out.println(getUrlParagraphs("http://www.nytimes.com/2016/07/24/travel/mozart-vienna.html?_r=0"));
}
public static String getUrlParagraphs (String url) {
try {
URL urlContent = new URL(url);
BufferedReader in = new BufferedReader(new InputStreamReader(urlContent.openStream()));
String line;
StringBuffer html = new StringBuffer();
while ((line = in.readLine()) != null) {
html.append(line);
System.out.println("Test");
}
in.close();
System.out.println(html.toString());
return html.toString();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
ありがとうございました!あなたが正しいです!それはリダイレクトされたURLです。リダイレクトされたURLをブラウザで開く場合は、ユーザー名とパスワードを入力してからページを表示する必要があります。私は自分のJavaコードでどのようにリダイレクトされたコードを取得できるのかは知っていますが、 "ユーザー、パスワード"のステップを渡してコンテンツを取得する方法はわかりません。あなたはそれについて何か考えていますか?私は単に私のユーザーを追加し、リダイレクトされたリンクに渡すことはできますか? – Simone