Как Jsoup разобрать "href" для просмотра android фильмов? - PullRequest
0 голосов
/ 23 апреля 2020

У меня есть веб-сайт, на который я PHP ссылаюсь на панель администратора href ссылки с использованием xgetter данных Github для моего приложения android с использованием JSOUP. Пожалуйста, помогите мне. Аналогичное приложение google play link Канал бирманской серии Burmese_seris_channel_photo Панель моих сайтов php_admin photo1

<LinearLayout
                    android:id="@+id/hostOne"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="vertical" />

moviesdetailfragment.xml full_source_code MoviesDetailFragment.java full_source_code

public class JsoupParser extends AsyncTask<String, Integer, String> {
            private StringBuilder stringBuilder;

            public ArrayList<String> url;

            public JsoupParser() {
            }


            public void onPreExecute() {
                super.onPreExecute();
            }


            public String doInBackground(String... strArr) {
                this.stringBuilder = new StringBuilder();
                try {
                    Elements select = Jsoup.parse(MovieDetailFragment.this.text).select("a[href]");
                    this.url = new ArrayList<>();
                    Iterator it = select.iterator();
                    while (it.hasNext()) {
                        this.url.add(((Element) it.next()).attr("href"));
                    }
                } catch (StringIndexOutOfBoundsException e) {
                    System.out.println("Exception occurred . . . . . . . . ");
                }
                return null;
            }


            public void onPostExecute(String str) {
                final int i = 0;
                while (i < this.url.size()) {
                    Button button = new Button(MovieDetailFragment.this.getActivity());
                    LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(-1, -2);
                    layoutParams.setMargins(5, 15, 5, 15);
                    button.setLayoutParams(layoutParams);
                    GradientDrawable gradientDrawable = new GradientDrawable();
                    gradientDrawable.setCornerRadius(20.0f);
                    gradientDrawable.setColor(Color.parseColor("#f76710"));
                    button.setBackground(gradientDrawable);
                    String str2 = ColorAnimation.DEFAULT_SELECTED_COLOR;
                    button.setTextColor(Color.parseColor(str2));
                    int i2 = i + 1;
                    StringBuilder sb = new StringBuilder();
                    sb.append("Watch EP-");
                    sb.append(String.valueOf(i2));
                    button.setText("Watch or Download");
                    button.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View view) {
                            MovieDetailFragment.this.xGetter.find(((String[]) JsoupParser.this.url.toArray(new String[JsoupParser.this.url.size()]))[i]);
                            MovieDetailFragment.this.xGetter.onFinish(new XGetter.OnTaskCompleted() {

                                @Override
                                public void onTaskCompleted(ArrayList<XModel> vidURL, boolean multiple_quality) {
                                    progressDialog.dismiss();
                                    if (multiple_quality)
                                        try {

                                            if (vidURL != null) {
                                                //This video you can choose qualities
                                                for (XModel model : vidURL) {
                                                    String url = model.getUrl();
                                                    //If google drive video you need to set cookie for play or download
                                                    String cookie = model.getCookie();
                                                }
                                                multipleQualityDialog(vidURL);
                                            } else done(null);

                                        } catch (Exception e) {
                                            e.printStackTrace();
                                        }
                                }


                                @Override
                                public void onError() {
                                    progressDialog.dismiss();
                                    done(null);

                                }
                            });
                            MovieDetailFragment.this.hostOne.addView(button);
                        }

                    });
                }
            }
...