登录页面,然后使用JSOUP解析html
Login to page then parse html using JSOUP
我目前有一个应用程序,需要一个用户名&从用户的密码,然后使用javascript命令在webview登录并呈现页面。我现在想避免使用webview,所以我计划使用jsoup来拉出页面的必要部分,并使用诸如textview之类的东西来呈现。那么,我如何使用jsoup执行javascript让用户登录,然后抓取html呢?
Jsoup不能执行javascript,因为它不包含javascript引擎。你可以使用的是selenium的web驱动api。现在有一个叫做android web driver的新项目,它可以被证明是适合你的工具(我自己从来没有尝试过)。
链接:
Android web driver
Selenium web driver
Jsoup不执行JavaScript。但我认为在这种情况下你仍然可以使用jsoup。这取决于JavaScript是如何工作的。一般来说,这就像在POST数据中使用凭据向某个URL提交页面一样。因此,您需要标识用户名和密码的参数名称和值。然后,您可以使用Jsoup将您的数据通过适当的凭据发布到该URL。
你可以试试
Document doc = Jsoup.connect("http://www.yoururl.com/")
.data("userName", "your username")
.data("password", "your password")
.post();
然后用doc对象你可以解析和显示你的视图
您应该先登录,然后解析html。您可以使用cookie进行登录,并在以后的代码中重新调用cookie,就像这样。
Response res = Jsoup.connect("http://yourloginURL").data("username", "username", "password", "password").method(Method.POST).execute();
Map<String, String> loginCookies = res.cookies();
Document doc1 = Jsoup.connect("http://yourotherURL").cookies(loginCookies).get();
相关文章:
- Dojo不解析自定义小部件的模板html中的小部件声明性
- 使用JQuery解析JSON嵌套数组
- 可以简化嵌套的延迟Q Promises解析吗
- 我的模板未被解析
- 如何在Javascript中解析AJAX数组的特定部分
- 主干集合重置和解析
- 解析javascript表单验证器
- 可以't使用Angular解析/检索JSON
- 如何使用Node.js最有效地解析网页
- 无法使用Jsoup从amazon或flipkart页面解析img和名称
- JSOUP:从HTML文档中解析Javascript字段
- Jsoup解析网页
- 如何在Java中使用Jsoup从javascript变量解析html
- 用jSoup解析一个网站
- 使用Jsoup解析html和javascript
- Android -用JSOUP解析JS生成的url
- 登录页面,然后使用JSOUP解析html
- 不要希望在通过JSOUP解析时创建文档结构
- 使用jsoup解析JavaScript
- 使用 jsoup 解析具有多列的表数据时,返回空字符串而不是第二列中的数据