java - 使用 Java 源代码抓取文本 - 没有评论文本

标签 java html web urlconnection

我正在尝试制作一个自动化的java程序,该程序将获取某个网页的源代码,但是我能够使用自动化程序获取的源代码与我右键单击该网页时获取的源代码不同网页。 现在,根据我在互联网上找到的代码,这是我的解决方案,但不起作用。我需要获取评论的文本,下面的代码不会返回它。

public static void main(String[] args) throws IOException {
    URL url = new URL(
            "http://www.tripadvisor.com/ShowUserReviews-g60745-d481776-r184086024-Prudential_Center-Boston_Massachusetts.html#REVIEWS");
    URLConnection spoof = url.openConnection();
    spoof.setRequestProperty("User-Agent",
            "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0;    H010818)");
    BufferedReader in = new BufferedReader(new InputStreamReader(
            spoof.getInputStream()));
    String strLine = "";
    String finalHTML = "";
    // Loop through every line in the source
    while ((strLine = in.readLine()) != null) {
        finalHTML += strLine+"\n";
    }
    System.out.println(finalHTML);
}

}

最佳答案

除非该页面是 1990 年代的纯静态 HTML 页面,否则您通常无法检索该页面的“源代码”。页面的源代码将由 HTML(或 XML+XSLT)加 CSS 以及在页面加载后修改 DOM 的 Javascript 组成。

此外,页面加载后,DOM 可以继续修改以响应事件,并且可以继续通过 Ajax 甚至原始套接字从一台或多台服务器获取数据。因此,不存在“源代码”这样的东西,除非您指的是最初传输的 HTML、CSS、Javascript 和图像。

关于java - 使用 Java 源代码抓取文本 - 没有评论文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20171952/

相关文章:

java - 如何测量丢弃的UDP消息数?

javascript - pdf 文件大小 JavaScript 或 html5

html - 背景全屏视频位置 : top center

php - 如何通过客户端ip获取经纬度?

javascript - 嵌套在 vbox 中的 hbox 不显示 ExtJS

java - 对于我的特殊情况,服务器应返回哪个HTTP代码?

已排序集合的 Java 对象排序

java - Spring Security + AngularJS Ajax 帖子

html - CSS居中对齐

java - 运行 GUI 时出现 Jmeter NullPointerException