使用 jsoup 登录并重定向到网站
Logging in and redirecting into a website using jsoup
我目前正在使用 jsoup 库来解析 websites.Can 我使用 jsoup.connect(url).get() 使用登录信息。用户 ID 和密码或任何其他可以提供此 function.I 的库已经看到一些使用 website.But 的登录页面解析的解决方案是否有任何方法可以使用用户名和 pwd.Thanks 直接连接帮助。
简答:视情况而定。
您必须了解用户如何在您正在解析的站点上对自己进行身份验证。可能是用户名和密码作为 GET/POST 请求参数发送(如果使用登录表单,请参阅 "Form-based authentication")或者站点使用 Web 容器身份验证,即在 web.xml 中配置(基本、NTLM、Kerberos 等)。
如果基于表单的身份验证接受 POST 请求,您可以使用
Jsoup.connect(url).data("user","username","pwd","1234").post();
如果您的登录表单有一个名为 user
的用户名输入和 pwd
密码输入。请注意,您将通过网络发送未加密的密码(除非您使用 https)。
对于其他身份验证,请考虑使用全尺寸 HTTP 客户端(例如 Apache HttpClient)和 RTFM(请参阅凭证提供程序、用户凭证)。
然后您将使用 Jsoup.parse(...)
方法之一来解析您将使用您选择的 HTTP 客户端获得的响应。
我目前正在使用 jsoup 库来解析 websites.Can 我使用 jsoup.connect(url).get() 使用登录信息。用户 ID 和密码或任何其他可以提供此 function.I 的库已经看到一些使用 website.But 的登录页面解析的解决方案是否有任何方法可以使用用户名和 pwd.Thanks 直接连接帮助。
简答:视情况而定。
您必须了解用户如何在您正在解析的站点上对自己进行身份验证。可能是用户名和密码作为 GET/POST 请求参数发送(如果使用登录表单,请参阅 "Form-based authentication")或者站点使用 Web 容器身份验证,即在 web.xml 中配置(基本、NTLM、Kerberos 等)。
如果基于表单的身份验证接受 POST 请求,您可以使用
Jsoup.connect(url).data("user","username","pwd","1234").post();
如果您的登录表单有一个名为 user
的用户名输入和 pwd
密码输入。请注意,您将通过网络发送未加密的密码(除非您使用 https)。
对于其他身份验证,请考虑使用全尺寸 HTTP 客户端(例如 Apache HttpClient)和 RTFM(请参阅凭证提供程序、用户凭证)。
然后您将使用 Jsoup.parse(...)
方法之一来解析您将使用您选择的 HTTP 客户端获得的响应。