Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
dark-lord131
0 / 0 / 0
Регистрация: 27.06.2016
Сообщений: 4
#1

Jsoup - Программирование Android

27.06.2016, 17:35. Просмотров 185. Ответов 1
Метки нет (Все метки)

Помогите пожалуйста. При нажатии на строку с заголовком приложение вылетает. Подскажите в чем дело и как потом это исправить.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
public class MainActivity extends AppCompatActivity {
 
    private ListView listView;
    private TextView textView;
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        listView = (ListView) findViewById(R.id.listView);
        textView = (TextView) findViewById(R.id.textView);
        ParseTittle parseTittle = new ParseTittle();
        parseTittle.execute();
        try{
             final HashMap<String,String> hashMap = parseTittle.get();
             final ArrayList<String> arrayList = new ArrayList<>();
            for(Map.Entry entry : hashMap.entrySet()){
                arrayList.add(entry.getKey().toString());
            }
            ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(MainActivity.this
                    ,android.R.layout.simple_list_item_1,arrayList);
            listView.setAdapter(arrayAdapter);
            listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    ParseText parseText = new ParseText();
                    parseText.execute(hashMap.get(arrayList.get(position)));
                    try{
                        listView.setVisibility(View.GONE);
                        textView.setText(parseText.get());
                    } catch (InterruptedException e){
                        e.printStackTrace();
                    } catch (ExecutionException e){
                        e.printStackTrace();
                    }
                }
            });
        } catch (InterruptedException e){
            e.printStackTrace();
        } catch (ExecutionException e){
            e.printStackTrace();
        }
    }
 
    @Override
    public void onBackPressed() {
        listView.setVisibility(View.VISIBLE);
        textView.setVisibility(View.GONE);
    }
 
    class ParseText extends AsyncTask<String,Void,String>{
 
        @Override
        protected String doInBackground(String... params) {
            String str = " ";
            try {
                Document document = Jsoup.connect(params[0]).get();
                Element element = document.select("news_id").first();
                str = element.text();
            } catch (IOException e){
                e.printStackTrace();
            }
            return str;
        }
    }
 
    class ParseTittle extends AsyncTask<Void,Void,HashMap<String,String>>{
 
        @Override
        protected HashMap<String, String> doInBackground(Void... params) {
            HashMap<String,String> hashMap = new HashMap<>();
            try {
                Document document = Jsoup.connect("http://khl24.ru/news/").get();
                Elements elements = document.select(".news ul li a");
                for (Element element : elements){
                    Element element1 = element.select("a[href]").first();
                    hashMap.put(element.text(),element1.attr("abs:href"));
                }
            } catch (IOException e){
                e.printStackTrace();
            }
 
            return hashMap;
        }
    }
}
Лог ошибки
Кликните здесь для просмотра всего текста

FATAL EXCEPTION: AsyncTask #2
Process: com.example.alex2.myapplication, PID: 18245
java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:300)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String org.jsoup.nodes.Element.text()' on a null object reference
at com.example.alex2.myapplication.MainActivity$ParseText.doInBackground(MainActivity.java:83)
at com.example.alex2.myapplication.MainActivity$ParseText.doInBackground(MainActivity.java:75)
at android.os.AsyncTask$2.call(AsyncTask.java:288)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)*
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)*
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)*
at java.lang.Thread.run(Thread.java:818)*
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.06.2016, 17:35     Jsoup
Посмотрите здесь:

Передача с webview в jsoup - Программирование Android
Здравствуйте.Подскажите,как решить проблему. Необходимо что бы все хтмл странички открывались спарсенными по условию, к примеру для...

Jsoup парсим сайт - Программирование Android
Добрый день! хочу разобраться как работать с данной библиотекой. Получаю информацию с сайта http://bestanekdots.ru public class...

Что такое Jsoup? - Программирование Android
JSOUP это тоже самое что JSON в андроид?? JSOUP чем отличается от JSON??

Jsoup получить элемент - Программирование Android
Подскажите как найти элемент в экземпляре Document, если цифры в id неизвестны(только буквы)? Document doc =...

Авторизация через jsoup - Программирование Android
Пытаюсь авторизоваться на сайте программно. Форма на странице вот такая: &lt;form action=&quot;http://site.com/user/login&quot; method=&quot;post&quot;...

Не работает Jsoup.connect - Программирование Android
Необходимо вытащить информацию из HTML-страницы. Поискав в интернете, решил установить и использовать библиотеку Jsoup. На этапе получения...

Ошибка приложения (парсинг jsoup) - Программирование Android
Вот есть такой код (делал по этому примеру ) package com.example.parse; import java.io.IOException; import...

Парсинг с Jsoup и заполнение в таблицу - Программирование Android
Доброго времени суток. Мозг выгорает, не могу разобраться как правильно парсить данный класс страницы и правильно загнать это всё в...

Некорректная работа jsoup на Android - Программирование Android
Здравствуйте! Подскажите, с чем может быть связана следующая проблема. Есть парсер html с использованием jsoup. Отрабатывает корректно,...

Сложности с Jsoup (doc.select) - Программирование Android
Добрый день, не могли бы подсказать с jsoup. Есть сайт с которого надо спарсить текст из li &lt;li class=&quot;list__item&quot;&gt;&lt;a...

Java.io.IOException Jsoup парсер - Программирование Android
Суть: получить текст песни с этого сайта В консоли в эклипсе все работает прекрасно, но когда переношу это на андроид выдает мне...

Jsoup парсинг адерса ссылки - Программирование Android
Как с помощью библиотеки jsoup парсить адрес ссылки &lt;a class=&quot;news-one clearfix brdr-btm&quot; href=&quot;/news/3719/&quot;&gt; &lt;h2&gt;Заголовок&lt;/h2&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
29.06.2016, 20:57     Jsoup #2
elements у вас нуль скорее всего, проверьте тег 'news ul li a'.
Yandex
Объявления
29.06.2016, 20:57     Jsoup
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru