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

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

Войти
Регистрация
Восстановить пароль
 
dajver
408 / 272 / 18
Регистрация: 18.09.2010
Сообщений: 1,107
#1

Вытащить из сайта определенную таблицу - Программирование Android

20.03.2015, 15:24. Просмотров 474. Ответов 9
Метки нет (Все метки)

Всем привет, я тут заморочился одной фигней, нужно спарсить страницу сайта и достать из нее только таблицу. Я сделал что бы вытаскивало кусок по айдишнику, но jsoup не хочет хватать вот такой айдишник top-team-stats-summary-grid, нужно спарсить вот этот сайт http://www.whoscored.com/Statistics. Как я не пытался таблицу статистики вытащить никак не получается, может кто даст какой совет?)

вот код как я делаю парсинг
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
new Thread(new Runnable() {
            public void run() {
                final String newPage;
                try {
                    Document doc = Jsoup.connect("http://www.whoscored.com/Statistics").get();
                    Elements newsRawTag = doc.select("#top-team-stats-summary-grid");
                    newPage = newsRawTag.html();
                    HtmlCleaner cleaner = new HtmlCleaner();
                    CleanerProperties props = cleaner.getProperties();
                    final TagNode tagNode = new HtmlCleaner(props).clean(newPage);
                    final SimpleHtmlSerializer htmlSerializer =
                            new SimpleHtmlSerializer(props);
                    webview.post(new Runnable() {
                        @Override
                        public void run() {
                            webview.loadDataWithBaseURL(null, htmlSerializer.getAsString(tagNode), "text/html", "charset=UTF-8", "about:blank");
                        }
                    });
                } catch (ClientProtocolException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
         }).start();
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
yura91
29 / 27 / 2
Регистрация: 23.10.2013
Сообщений: 2,238
20.03.2015, 17:03     Вытащить из сайта определенную таблицу #2
а через HttpClient нельзя и распарсить JSON ответа?? Пробовал так??
androbro
323 / 283 / 59
Регистрация: 17.10.2014
Сообщений: 839
20.03.2015, 17:03     Вытащить из сайта определенную таблицу #3
dajver, никогда ничего не парсил, но стало интересно(футбол, все дела))
вот что заметил, мож поможет - если можно спарсить элементы которые отображаются в коде("Просмотреть код страницы" в хроме)...элементы которые отображаются в "Просмотр код элемента" не парсятся(генерятся JavaScriptом)...эт как я для себя понял)
Для эксперимента попробуйте спарсить:
Java
1
Elements newsRawTag = doc.select("#overall-formation-weekly-content");
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
20.03.2015, 18:42     Вытащить из сайта определенную таблицу #4
Цитата Сообщение от dajver Посмотреть сообщение
но jsoup не хочет хватать вот такой айдишник top-team-stats-summary-grid
А может там такого id и нет? Я не нашел.
dajver
408 / 272 / 18
Регистрация: 18.09.2010
Сообщений: 1,107
20.03.2015, 23:22  [ТС]     Вытащить из сайта определенную таблицу #5
Цитата Сообщение от yura91 Посмотреть сообщение
а через HttpClient нельзя и распарсить JSON ответа?? Пробовал так??
Как мне получить оттуда json ?) Что то я вас не совсем понимаю

Цитата Сообщение от androbro Посмотреть сообщение
dajver, никогда ничего не парсил, но стало интересно(футбол, все дела))
вот что заметил, мож поможет - если можно спарсить элементы которые отображаются в коде("Просмотреть код страницы" в хроме)...элементы которые отображаются в "Просмотр код элемента" не парсятся(генерятся JavaScriptом)...эт как я для себя понял)
Я же так и делаю) Нашел айдишник который мне нужен и пытался тянуть таблицу, но ничего не выводится, айдишник что я привел в вопросе не находит...

Цитата Сообщение от Rube Посмотреть сообщение
А может там такого id и нет? Я не нашел.
http://data3.floomby.com/files/share...5WlP55I0kw.jpg
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
21.03.2015, 19:51     Вытащить из сайта определенную таблицу #6
А если так
Миниатюры
Вытащить из сайта определенную таблицу  
androbro
323 / 283 / 59
Регистрация: 17.10.2014
Сообщений: 839
21.03.2015, 20:29     Вытащить из сайта определенную таблицу #7
dajver,
Цитата Сообщение от dajver Посмотреть сообщение
http://data3.floomby.com/files/share...5WlP55I0kw.jpg
если нажать в хроме "Просмотр кода страницы", то вы top-team-stats-summary-grid не найдете, меня тоже это немного сбило с толку(вот как раз таки из этого кода можно парсить по айдишникам)
"Просмотр кода элемента"- айдишники отсюда не парсятся
Как я понял, в первом случае как я понимаю отображается каркас страницы без отработки скриптов, во втором уже сгенерированная скриптами страница.
dajver
408 / 272 / 18
Регистрация: 18.09.2010
Сообщений: 1,107
21.03.2015, 22:45  [ТС]     Вытащить из сайта определенную таблицу #8
То есть спарсить страницу не выйдет? Оно генерирует новые айдишники каждый раз когда заходишь на сайт?
androbro
323 / 283 / 59
Регистрация: 17.10.2014
Сообщений: 839
21.03.2015, 22:56     Вытащить из сайта определенную таблицу #9
dajver,
Цитата Сообщение от dajver Посмотреть сообщение
То есть спарсить страницу не выйдет?
как я уже писал опыта парсить у меня нет, но неразрешимых ситуаций нет
Цитата Сообщение от dajver Посмотреть сообщение
Оно генерирует новые айдишники каждый раз когда заходишь на сайт?
нет, айдишники всегда теже.
они просто динамически генерируются наверн
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.03.2015, 13:35     Вытащить из сайта определенную таблицу
Еще ссылки по теме:
Колода с картами, вероятность вытащить определенную
C# WPF Как вытащить определенную ячейку из датагрида
Нужно вытащить определенную часть текста из файла. Visual Basic
Экспорт таблицы из Access в определенную таблицу Excel MS Access
jQuery При нажатии на переключатель автоматически произвести запрос в определенную таблицу

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

Или воспользуйтесь поиском по форуму:
dajver
408 / 272 / 18
Регистрация: 18.09.2010
Сообщений: 1,107
22.03.2015, 13:35  [ТС]     Вытащить из сайта определенную таблицу #10
Ну раз они генерируются динамически то и впоймать нужный возможности нет) нужно парсить все страницу и выкусывать кусок который не генерируется динамически, это я единственный способ вижу такой...
Yandex
Объявления
22.03.2015, 13:35     Вытащить из сайта определенную таблицу
Ответ Создать тему
Опции темы

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