2015-10-15 64 views
0

我想解析HTML頁面基於JavaScript和內容加載時,當我點擊按鈕和JavaScript工作。我使用libs Jsoup,Selenium在Java上的PC上創建我的應用程序。我希望它能在android上運行。我加硒新我的Android應用程序的項目,並添加依賴於gradle這個:Selenium into android project

compile 'org.seleniumhq.selenium:selenium-htmlunit-driver:2.48.2' 

但是我看到很多相同的信息:

Warning:Dependency org.apache.httpcomponents:httpclient:4.5.1 is 
ignored for debug as it may be conflicting with the internal version 
provided by Android. In case of problem, please repackage it with 
jarjar to change the class packages 

後,我嘗試添加的HttpClient爲Android:

compile 'org.apache.httpcomponents:httpclient-android:4.3.5.1' 

但它不起作用。有1個錯誤:

Error:Execution failed for task ':app:preDexDebug'. > 
com.android.ide.common.process.ProcessException: 
org.gradle.process.internal.ExecException: Process 'command 'C:\Program 
Files\Java\jdk1.8.0_60\bin\java.exe'' finished with non-zero exit value 1 

如何將Selenium包含在android項目中用於解析基於Javascript的HTML? 或 如何在沒有Selenium的情況下解析基於JS的HTML基礎? 謝謝。

回答

0

問題沒有解決,但我發現嗅探器瀏覽器和服務器後響應包含JSON與我需要的數據的HTTP-get請求。關。

0

我添加到搖籃文件到相關模塊

configurations{ 
     all*.exclude group: 'org.apache.httpcomponents', module: 'httpclient' 
     all*.exclude group: 'commons-logging', module: 'commons-logging' 
     all*.exclude group: 'xalan', module: 'xalan' 
     all*.exclude group: 'xerces', module: 'xercesImpl' 
     all*.exclude group: 'xml-apis', module: 'xml-apis' 
    } 

,並添加到Android塊:

packagingOptions { 
     exclude 'META-INF/DEPENDENCIES' 
     exclude 'META-INF/NOTICE' 
     exclude 'META-INF/LICENSE' 
    } 

有1個錯誤:

Information:Gradle tasks [:app:assembleDebug] 
:app:preBuild UP-TO-DATE 
:app:preDebugBuild UP-TO-DATE 
:app:checkDebugManifest 
:app:preReleaseBuild UP-TO-DATE 
:app:prepareComAndroidSupportAppcompatV72220Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportV42220Library UP-TO-DATE 
:app:prepareDebugDependencies 
:app:compileDebugAidl UP-TO-DATE 
:app:compileDebugRenderscript UP-TO-DATE 
:app:generateDebugBuildConfig UP-TO-DATE 
:app:generateDebugAssets UP-TO-DATE 
:app:mergeDebugAssets UP-TO-DATE 
:app:generateDebugResValues UP-TO-DATE 
:app:generateDebugResources UP-TO-DATE 
:app:mergeDebugResources UP-TO-DATE 
:app:processDebugManifest UP-TO-DATE 
:app:processDebugResources UP-TO-DATE 
:app:generateDebugSources UP-TO-DATE 
:app:processDebugJavaRes UP-TO-DATE 
:app:compileDebugJava UP-TO-DATE 
:app:compileDebugNdk UP-TO-DATE 
:app:compileDebugSources UP-TO-DATE 
:app:preDexDebug UP-TO-DATE 
:app:dexDebug 
UNEXPECTED TOP-LEVEL EXCEPTION: 
com.android.dex.DexIndexOverflowException: Cannot merge new index 70725 into a non-jumbo instruction! 
    at com.android.dx.merge.InstructionTransformer.jumboCheck(InstructionTransformer.java:109) 
    at com.android.dx.merge.InstructionTransformer.access$800(InstructionTransformer.java:26) 
    at com.android.dx.merge.InstructionTransformer$StringVisitor.visit(InstructionTransformer.java:72) 
    at com.android.dx.io.CodeReader.callVisit(CodeReader.java:114) 
    at com.android.dx.io.CodeReader.visitAll(CodeReader.java:89) 
    at com.android.dx.merge.InstructionTransformer.transform(InstructionTransformer.java:49) 
    at com.android.dx.merge.DexMerger.transformCode(DexMerger.java:842) 
    at com.android.dx.merge.DexMerger.transformMethods(DexMerger.java:813) 
    at com.android.dx.merge.DexMerger.transformClassData(DexMerger.java:785) 
    at com.android.dx.merge.DexMerger.transformClassDef(DexMerger.java:682) 
    at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:542) 
    at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) 
    at com.android.dx.merge.DexMerger.merge(DexMerger.java:189) 
    at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502) 
    at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334) 
    at com.android.dx.command.dexer.Main.run(Main.java:277) 
    at com.android.dx.command.dexer.Main.main(Main.java:245) 
    at com.android.dx.command.Main.main(Main.java:106) 
Error:Execution failed for task ':app:dexDebug'. 
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_60\bin\java.exe'' finished with non-zero exit value 2 

如何解決這個問題呢? 謝謝

+0

[git hub上的鏈接](https://github.com/iamsimakov/HtmlUnitApp) – Alexey