使用受密码保护的网站的Jsoup获取HTML源代码

时间:2011-12-30 07:05:42

标签: java android html login android-webview

正如标题所说,我正在尝试使用Jsoup,特别是方法

String html = Jsoup.connect(page.getUrl()).get().html(); 

网站受用户名和密码保护,我有登录凭据,但如果我尝试获取网页来源,则网址会重定向到“请登录”页面。我没有自己的网站(没有直接访问数据库)。此外,我不知道http或Javascript。在活动中,用户将在webview中导航并登录到该网站,一旦他们登录,我将获取URL并尝试获取源(使用上述方法)。

总之,我可以使用Jsoup成功获取源代码,但URL会重定向到登录页面。

提前谢谢。

1 个答案:

答案 0 :(得分:2)

您必须使用您的java代码登录网站。使用实时http头[firefox addon]查看所有http标头并尝试使用您的java代码发送这些标头,以便网站认为Web浏览器正在尝试连接到它。

简而言之,尝试使用您的java代码模拟浏览器的行为和操作。

您可以使用以下代码中的Jsoup登录:

Document doc = Jsoup.connect("http://www.example.com/login.php")
.data("username", "myUsername")
.data("password", "myPassword")
.post();

然后尝试阅读页面的html