Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.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分析HTML_Java_Android_Html_Android Studio_Jsoup - Fatal编程技术网

Java 无法使用JSoup分析HTML

Java 无法使用JSoup分析HTML,java,android,html,android-studio,jsoup,Java,Android,Html,Android Studio,Jsoup,我想从网站上获取HTML数据,下载480p的视频。但它不起作用。为此,我使用了一个异步类。以下是我的doInBackground方法: @Override protected Void doInBackground(Void... voids) { try { // DOWNLOAD_URL="http://topvideodownloader.com/?url=https%3A%2F%2Fwww.dailymotion.co

我想从网站上获取HTML数据,下载480p的视频。但它不起作用。为此,我使用了一个异步类。以下是我的doInBackground方法:

@Override
        protected Void doInBackground(Void... voids) {
            try {
              //  DOWNLOAD_URL="http://topvideodownloader.com/?url=https%3A%2F%2Fwww.dailymotion.com%2Fvideo%2Fx7nctdj"
                Log.i("DownloadActivity", DOWNLOAD_URL);
                Connection.Response response = Jsoup.connect(DOWNLOAD_URL)
                        .ignoreContentType(true)
                        .userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:64.0) Gecko/20100101 Firefox/64.0")
                        .referrer("http://www.google.com")
                        .timeout(12000)
                        .followRedirects(true)
                        .execute();
                Document doc = response.parse();
                Log.i("DownloadActivity",doc.toString());
//                title = doc.select("div.title").text();
//                Log.e("Main", title);
//                String atag= doc.select("a.vd-down btn btn-default btn-download").attr("href");
//                matag = atag;
//                Log.e("Main", matag);
            } catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }
但方法是获取完整的HTML。它只取它的前几行。我也试着去拿

Document doc = Jsoup.connect(DOWNLOAD_URL).userAgent("Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6").get();
但是用这种方法。它连一行字都没有

我不知道我做错了什么??请帮帮我。非常感谢

试试这个

class TestAsync extends AsyncTask<Void, Integer, String> {
    String TAG = getClass().getSimpleName();

    protected void onPreExecute() {
        super.onPreExecute();
        //show progress bar
    }

    protected String doInBackground(Void...arg0) {
          try {
              //  DOWNLOAD_URL="http://topvideodownloader.com/?url=https%3A%2F%2Fwww.dailymotion.com%2Fvideo%2Fx7nctdj"
                 Document doc = Jsoup.connect(DOWN_URL)
                .header("Accept-Encoding", "gzip, deflate")
                .userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0")
                .maxBodySize(0)
                .timeout(0)
                .get();

                Log.i("DownloadActivity",doc.toString());
//                title = doc.select("div.title").text();
//                Log.e("Main", title);
//                String atag= doc.select("a.vd-down btn btn-default btn-download").attr("href");
//                matag = atag;
//                Log.e("Main", matag);
            } catch (Exception e) {
                e.printStackTrace();
            }
            return "success";

    }

    protected void onPostExecute(String result) {
        super.onPostExecute(result);
        if(result.equals("success"))
         //stop progress bar
    }
}
类TestAsync扩展异步任务{
字符串标记=getClass().getSimpleName();
受保护的void onPreExecute(){
super.onPreExecute();
//显示进度条
}
受保护的字符串doInBackground(无效…arg0){
试一试{
//下载_URL=”http://topvideodownloader.com/?url=https%3A%2F%2Fwww.dailymotion.com%2Fvideo%2Fx7nctdj"
Document doc=Jsoup.connect(DOWN\u URL)
.header(“接受编码”、“gzip、deflate”)
.userAgent(“Mozilla/5.0(Windows NT 6.1;WOW64;rv:23.0)Gecko/20100101 Firefox/23.0”)
.maxBodySize(0)
.超时(0)
.get();
Log.i(“DownloadActivity”,doc.toString());
//title=doc.select(“div.title”).text();
//日志e(“主要”,标题);
//字符串atag=doc.select(“a.vd-down btn默认btn下载”).attr(“href”);
//matag=atag;
//Log.e(“主要”,matag);
}捕获(例外e){
e、 printStackTrace();
}
返回“成功”;
}
受保护的void onPostExecute(字符串结果){
super.onPostExecute(结果);
如果(结果等于(“成功”))
//停止进度条
}
}

检查下面一条注释不用于扩展讨论;这段对话已经结束。