【问题标题】:Getting HTML Source using Jsoup of a password protected website使用密码保护网站的 Jsoup 获取 HTML 源代码
【发布时间】:2012-01-30 09:57:04
【问题描述】:

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

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

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

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

提前谢谢你。

【问题讨论】:

    标签: java android html login android-webview


    【解决方案1】:

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

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

    您可以通过以下代码使用 Jsoup 登录:

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

    然后尝试读取页面的html

    【讨论】:

    • “密码”和“我的密码”有什么区别?希望这有效! :D
    • myPassword 是您用于登录的密码。
    • 另请参阅 Jsoup 文档以供参考 Jsoupjsoup.org/apidocs/org/jsoup/…, java.lang.String)
    猜你喜欢
    • 1970-01-01
    • 2014-05-24
    • 2011-05-08
    • 2015-07-01
    • 1970-01-01
    • 2023-04-02
    • 2012-12-13
    • 2013-12-09
    相关资源
    最近更新 更多