如何在JavaScript更改DOM后以编程方式读取网页的源代码?

时间:2014-04-28 07:02:22

标签: java javascript html jsoup

我想查看网页的源代码,但JavaScript会更改它。 例如。 https://delicious.com/search/ali这是一个网站页面,当我们点击CTRL + U时,它会显示JavaScript更改的源代码而不是实际的。如果您看到使用Inspect Element的代码,则显示完整的源代码。所以我想获得完整的源代码。 请告诉我有没有任何技术可以获得Inspect Element提供的源代码。我正在构建一个软件,这是要求。如果您要引用我的技术或API是在JAVA中,那就好了。 我打算建立一个从这个网站获取网址的软件。 但由于JavaScript的变化,我无法获得实际的源代码。

1 个答案:

答案 0 :(得分:-1)

我不确定,但这可能就是你所要求的。代码获取URL对象,获取服务器的响应,并返回响应的主体。这应该是您的案例中的HTML文档。

String getSource(URL url) {
    HttpURLConnection connection = url.openConnection();

    connection.setDoOutput(true);
    connection.setDoInput(true);
    connection.getOutputStream().write(42);

    byte[] bytes = new byte[512];
    try (BufferedInputStream bis = new BufferedInputStream(connection.getInputStream())) {
        StringBuilder response = new StringBuilder(500);
        int in;
        while ((in = bis.read(bytes)) != -1) {
            response.append(new String(bytes, 0, in));
        }
        return response.toString().split("\r\n\r\n")[1];
    };
}