网页的HTML和Jsoup的响应是不一样的


Connection.Response loginResponse = Jsoup.connect("https://users.premierleague.com/accounts/login/")
.userAgent("Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)")
.data("csrfmiddlewaretoken", csrfmiddlewaretokenValue)
.data("login", "anand.svm99@gmail.com")
.data("password", "****")
.data("app", "plfpl-web")
.data("redirect_uri", "https://fantasy.premierleague.com/a/team/my")
.timeout(600000)
.cookie("auth", "token")
.method(Connection.Method.POST)
.execute();

我正在使用上面的代码在我的Android应用程序中使用Jsoup登录一个网站。但是登录后网页的实际HTML和Jsoup的响应是不同的。网页的主体在 Jsoup 响应中找不到。我想这是一些安全功能。我尝试了不同的用户代理和较大的超时值,但没有运气。我该怎么做才能解决问题?

在SPA(单页应用程序(的情况下,DOM不是加载而是动态生成的。所以页面只包含一个 DOM 根 - 例如一个div,其余的都是由 JavaScript 构建的。

例如,基于 React 的 Web 应用程序。

在这种情况下,JSoup 将无济于事。

要解决,请检查浏览器发送的内容并尝试模仿请求解析响应。