正如标题所说,我正在尝试使用Jsoup,特别是方法
String html = Jsoup.connect(page.getUrl()).get().html();
该网站受用户名和密码保护,并且我有登录凭据,但如果我尝试获取页面源,则 URL 会重定向到“请登录”页面。我不拥有该网站(无法直接访问数据库)。此外,我不知道http或Javascript。在 Activity 中,用户将在 Web View 中导航并登录到该网站,登录后,我将获取 URL 并尝试获取源代码(使用上述方法)。
总之,我可以使用 Jsoup 成功获取源,但 URL 重定向到登录页面。
提前谢谢您。
最佳答案
您必须使用 java 代码登录该网站。使用实时http header [firefox addon]查看所有http header 并尝试使用您的java代码发送这些 header ,以便网站认为网络浏览器正在尝试连接到它。
简而言之,尝试使用 Java 代码模拟浏览器的行为和操作。
您可以通过以下代码使用 Jsoup 登录:
Document doc = Jsoup.connect("http://www.example.com/login.php")
.data("username", "myUsername")
.data("password", "myPassword")
.post();
然后尝试读取页面的 html
关于java - 使用受密码保护的网站的 Jsoup 获取 HTML 源代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8677062/