Web scraping 为什么YouTube在浏览器中返回的结果与原始HTTP请求不同?

Web scraping 为什么YouTube在浏览器中返回的结果与原始HTTP请求不同?,web-scraping,youtube,jsoup,Web Scraping,Youtube,Jsoup,我正在编写一个方法,通过对www.YouTube.com/results页面的HTTP请求来搜索YouTube。然而,当我在Chrome中执行相同的搜索时,当我将得到的结果与inspect元素的结果进行比较时,我注意到了一个差异。这是什么原因 我在请求中将用户代理字符串设置为Mozilla/5.0,因此我希望浏览器的结果与方法的结果相匹配。相反,我看到方法响应包含类为“yt lockup title”的标记,但使用inspect元素时,没有这样的类 public static String se

我正在编写一个方法,通过对www.YouTube.com/results页面的HTTP请求来搜索YouTube。然而,当我在Chrome中执行相同的搜索时,当我将得到的结果与inspect元素的结果进行比较时,我注意到了一个差异。这是什么原因

我在请求中将用户代理字符串设置为Mozilla/5.0,因此我希望浏览器的结果与方法的结果相匹配。相反,我看到方法响应包含类为“yt lockup title”的标记,但使用inspect元素时,没有这样的类

public static String search(String query) throws IOException {
    Document results = Jsoup.connect("https://www.youtube.com/results").data("search_query", query).userAgent("Mozilla/5.0").get();
    System.out.println(results.body());
    return results;
}
该方法打印包含