我打算创建一个 Android 应用程序,实现无头登录到网站并在保持已登录会话的同时从后续页面中爬取一些内容。
最初我在普通的 Java 项目中使用了 HtmlUnit ,它工作得很好。但后来发现 HtmlUnit 与 Android 不兼容。
然后我尝试了通过向登录表单发送 HTTP “POST” 请求的方式来使用 JSoup 库。但由于 JSoup 不支持 JavaScript,导致结果页面不能完全加载。
之后有人建议我看看 Selendroid ,它实际上是一个 Android 测试自动化框架。但我实际上需要的是一个支持 JavaScript 和 Android 的 Html 分析器。我发现 Selendroid 很难理解,甚至找不到要使用哪些依赖项。
- selendroid-client
- selendroid-standalone
- selendroid-server
使用 Selenium WebDriver,代码只需要像下面这样简单。但是能否有人给我展示一段类似的 Selendroid 代码示例呢?
WebDriver driver = new FirefoxDriver();
driver.get("https://mail.google.com/");
driver.findElement(By.id("email")).sendKeys(myEmail);
driver.findElement(By.id("pass")).sendKeys(pass);
// Click on 'Sign In' button
driver.findElement(By.id("signIn")).click();
还有,
- 我需要在我的Gradle.Build文件中添加哪些依赖?
- 我需要导入哪些Selendroid库?