Получение HtmlUnit для запуска под Android
Мне было интересно, если кто-нибудь смог заставить HtmlUnit работать под Android?
У меня есть сайт, который я очищаю с помощью Jsoup (это хорошо работает). Однако один из разделов содержит более 2 страниц. Сайт использует ASP.NET, и они используют обратную передачу Javascript для ссылки, ведущей на следующую страницу. В результате мне нужно как-то выполнить этот Javascript, чтобы получить содержимое следующей страницы. Вот где мои попытки HtmlUnit приходит.
Следующий код отлично работал на Java:
WebClient webClient = new WebClient();
webClient.setJavaScriptEnabled(true);
HtmlPage page = null;
webClient.setThrowExceptionOnFailingStatusCode(false);
webClient.setThrowExceptionOnScriptError(false);
try {
page = webClient.getPage(URLOne.toString());
} catch (FailingHttpStatusCodeException e1) {
e1.printStackTrace();
} catch (MalformedURLException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
HtmlAnchor anchor = (HtmlAnchor) page.getAnchorByHref("javascript:__doPostBack('lb_next','')");
try {
page = (HtmlPage) anchor.click();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
webClient.closeAllWindows();
Document doc1 = Jsoup.parse(page.asXml());
Когда я установил необходимые библиотеки в Android, мне пришлось удалить: xalan, xerces и xml-apis (HtmlUnit на Android). Если я их оставлю, то получу ошибку Dalvik.
Без них приложения работают в Android, но когда дело доходит до раздела, требующего HtmlUnit, я получаю несколько следующих ошибок в logcat:
Could not find method org.apache.http.conn.scheme.Scheme.<init>, referenced from method com.gargoylesoftware.htmlunit.HttpWebConnection.createHttpClient
Could not find method org.w3c.dom.css.CSSStyleDeclaration.getLength, referenced from method com.gargoylesoftware.htmlunit.javascript.host.css.ComputedCSSStyleDeclaration.applyStyleFromSelector
VFY: unable to find class referenced in signature (Lorg/w3c/dom/css/CSSStyleSheet;
VFY: unable to find class referenced in signature (Lorg/w3c/dom/css/CSSStyleDeclaration;
Тогда приложение приложение закрывается. Эта проблема похожа на это:Как мне заставить HtmlUnit работать под Android? а такжеHtmlUnit Android проблема с WebClient
Единственная причина, по которой я использую HtmlUnit - это возможность запускать Javascript на этой странице. Я открыт для любой альтернативы, которая может позволить мне сделать что-то подобное.
Спасибо