Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jsoup.connect().get()只接受Android上html文件的一部分_Java_Android_Parsing_Jsoup - Fatal编程技术网

Java Jsoup.connect().get()只接受Android上html文件的一部分

Java Jsoup.connect().get()只接受Android上html文件的一部分,java,android,parsing,jsoup,Java,Android,Parsing,Jsoup,所以,我尝试解析维基百科,我的代码在计算机上运行良好。 总之,我所更改的-.connect().get在AsyncTask中,但我只得到html文件的一部分(没有“正文”,只有“标题”中第二个“脚本”的一半),我不明白为什么。 这是我的Android代码示例 protected String doInBackground(String... params) { try { Document doc = Jsoup.connect(params[0]).ge

所以,我尝试解析维基百科,我的代码在计算机上运行良好。 总之,我所更改的-.connect().get在AsyncTask中,但我只得到html文件的一部分(没有“正文”,只有“标题”中第二个“脚本”的一半),我不明白为什么。 这是我的Android代码示例

protected String doInBackground(String... params) {
        try {
            Document doc = Jsoup.connect(params[0]).get();
            return doc.toString();
        } catch (IOException e) {
            //...
            e.printStackTrace();
        }
        return null;
    }
这很简单

String url = "https://en.wikipedia.org/wiki/Protectorate";
    Document doc = null;
    try {
        doc = Jsoup.connect(url).get();
    } catch (IOException e) {
        //...
        e.printStackTrace();
    }
我查过了,参数[0]是,这里没有错。
如果您需要一些额外的信息,我当然会提供给您。

Logcat在这里愚弄了我们,因为它缩短了消息(我假设您使用Logcat检查了字符串?请参阅)

如果将结果字符串拆分为块,您将看到整个页面已加载。尝试向AsyncTask类添加类似于
logAll
函数的内容,以查看完整输出:

private class DownloadTask extends AsyncTask<String, Integer, String> {

    Document doc = null;

    protected String doInBackground(String... params) {

        try {
            doc = Jsoup.connect(params[0]).get();
            return doc.toString();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return doc.toString();
    }

    @Override
    protected void onPostExecute(String s) {
        super.onPostExecute(s);
        logAll("async",doc.toString());
    }

    void logAll(String TAG, String longString) {

        int splitSize = 300;

        if (longString.length() > splitSize) {
            int index = 0;
            while (index < longString.length()-splitSize) {
                Log.e(TAG, longString.substring(index, index + splitSize));
                index += splitSize;
            }
            Log.e(TAG, longString.substring(index, longString.length()));
        } else {
            Log.e(TAG, longString.toString());
        }
    }
}
私有类下载任务扩展了异步任务{
单据单据=空;
受保护的字符串doInBackground(字符串…参数){
试一试{
doc=Jsoup.connect(参数[0]).get();
返回doc.toString();
}捕获(例外e){
e、 printStackTrace();
}
返回doc.toString();
}
@凌驾
受保护的void onPostExecute(字符串s){
super.onPostExecute(s);
logAll(“异步”,doc.toString());
}
void logAll(字符串标记、字符串长字符串){
int splitSize=300;
if(longString.length()>splitSize){
int指数=0;
while(索引