我试图通过使用我的java代码来获取某些url的内容。该代码返回一些网址的内容,例如: “http://www.nytimes.com/video/world/europe/100000004503705/memorials-for-victims-of-istanbul-attack.html” ,并且它对于某些其他网站不会返回任何内容。例如这一个: “http://www.nytimes.com/2016/07/24/travel/mozart-vienna.html?_r=0” 当我手动检查网址时,我看到了内容,即使我查看源代码,我也没有注意到页面结构之间有任何特别的区别。但我仍然没有得到这个网址。为什么我的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