我试图获取一个网站的HTML
源代码,该网站的所有内容都没有立即可用。 HTML的重新加载是通过JavaScript
完成的。当我尝试连接URL
并获取HTML
时,它不会包含所有内容。
到目前为止,这是我的代码:
import java.io.IOException;
import org.jsoup.Jsoup;
public class AudioLibrary
{
public static void main(String[] arguments) throws IOException
{
String htmlSource = Jsoup
.connect("https://www.youtube.com/audiolibrary/music").get()
.html();
System.out.println(htmlSource);
}
}
在检索HTML源代码之前,如何确保JavaScript
完成其工作?在我的情况下,它显然是来自YouTube Audio Library的免费下载音乐列表。
答案 0 :(得分:2)
JavaScript在浏览器中运行,因此您将获得的只是基本页面,可能包含JavaScript代码,但不是由JavaScript创建的最终修改后的HTML页面,因为您从未执行过JavaScript。
您正在下载基本文本文件(HTML)。而已。如果您是浏览器,现在可以在页面中运行JavaScript,然后修改此HTML。但是,由于您没有运行JavaScript,因此没有任何内容被修改,您将无法使用基本页面。