Java 如何使用Jsoup登录到ASPX网站
我一直在尝试使用Jsoup爬虫登录到一个aspx网站,到目前为止我发现的所有东西都是表单,但这个aspx网站没有任何表单。我该怎么做 以下是我目前掌握的情况:Java 如何使用Jsoup登录到ASPX网站,java,html,web-crawler,jsoup,Java,Html,Web Crawler,Jsoup,我一直在尝试使用Jsoup爬虫登录到一个aspx网站,到目前为止我发现的所有东西都是表单,但这个aspx网站没有任何表单。我该怎么做 以下是我目前掌握的情况: Connection.Response loginForm = Jsoup.connect(LOGARUN_URL) .method(Connection.Method.GET) .execute(); Connection.Response currentPage =
Connection.Response loginForm = Jsoup.connect(LOGARUN_URL)
.method(Connection.Method.GET)
.execute();
Connection.Response currentPage = Jsoup.connect(LOGIN_FORM_URL)
.data("LoginName", USERNAME)
.data("Password", PASSWORD)
.cookies(loginForm.cookies())
.method(Connection.Method.POST)
.userAgent(USER_AGENT)
.execute();
System.out.println(currentPage.parse().html());
经过一番挖掘,我找到了答案 下文提供了一个简短的摘要: 步骤1:进入您想要登录的页面,使用Chrome开发者控制台(选项>工具>开发者工具),输入$(“输入”) 步骤2:获取名称和值并将其添加到先前的.data中 步骤3:转到页面源,查找并添加任何需要的附加数据及其值 在那之后,你应该这样做,它应该是这样的
Connection.Response currentPage = Jsoup.connect(LOGIN_FORM_URL)
.data("LoginName", USERNAME)
.data("Password", PASSWORD)
.data("SubmitLogon", "true")
.userAgent(USER_AGENT)
.data("input[name=__VIEWSTATE]","/wEPDwULLTE5NTUyNzc3NDhkZC7w9zeYDbAWpWTaWlQFzEFw15ln")
.data("input[name=__VIEWSTATEGENERATOR]","5A2128B1")
.cookies(loginForm.cookies())
.method(Connection.Method.POST)
.execute();