JavaScript改变DOM后,如何通过编程读取网页的源代码?

JavaScript改变DOM后,如何通过编程读取网页的源代码?,java,javascript,html,jsoup,Java,Javascript,Html,Jsoup,我想查看网页的源代码,但JavaScript会更改它。 例如,这是一个站点页面,当我们单击CTRL+U时,它会显示JavaScript更改的源代码,而不是实际的源代码。如果您看到使用Inspect元素的代码,那么它将显示完整的源代码。所以我想得到完整的源代码。 请告诉我是否有任何技术可以获取Inspect元素提供的源代码。我正在构建一个软件,这是它的需求。如果您要介绍的技术或api是JAVA的,那就好了。 我要建立一个软件,从这个网站获取URL。 但是由于JavaScript所做的更改,我无法获

我想查看网页的源代码,但JavaScript会更改它。 例如,这是一个站点页面,当我们单击CTRL+U时,它会显示JavaScript更改的源代码,而不是实际的源代码。如果您看到使用Inspect元素的代码,那么它将显示完整的源代码。所以我想得到完整的源代码。 请告诉我是否有任何技术可以获取Inspect元素提供的源代码。我正在构建一个软件,这是它的需求。如果您要介绍的技术或api是JAVA的,那就好了。 我要建立一个软件,从这个网站获取URL。
但是由于JavaScript所做的更改,我无法获得实际的源代码。

我不确定,但这可能是您想要的。代码获取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];
    };
}

首先,记住或学习
java!=javascript
源代码是使用Ctrl+U可见的代码。检查器显示内存中DOM的当前状态,这与源代码不同。那么您想要原始HTML源代码吗?右键单击->查看源。要以编程方式进行吗?只需下载HTML(如果是javascript,则使用Ajax;如果是java,则使用httprequest),它将是原始的,因为您不需要运行任何脚本。大多数浏览器使用
查看源代码:
,您可以将其添加到url的开头。这将是原始html代码
查看源代码:https://delicious.com/search/ali
,没有javascriptsebcap26所做的更改,我想获得inspector使用java程序显示的源代码。它在哪里执行javascript?