Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
1

Вытащить из сайта определенную таблицу

20.03.2015, 15:24. Просмотров 644. Ответов 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();
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.03.2015, 15:24
Ответы с готовыми решениями:

Jsoup Парсинг сайта в таблицу (GridView)!
Здравствуйте! Подскажите новичку почему этот код на ListView работает, а на...

Вытащить таблицу с данными с сайта
Нужно связаться с сайтом на С#. Возможно ли? Если да то нужно вытащить таблицу...

Колода с картами, вероятность вытащить определенную
Здравствуйте, подскажите, правильно ли решаю. Из полной колоды случайным...

из текст. ячейки вытащить определенную информацию
Подскажите пожалуйста, как из текстовой ячейки вытащить информацию по списку...

Как вытащить определенную ячейку из датагрида
Второй день мучаюсь не могу понять как эту выбранную ячейку вытащить. Есть...

9
yura91
1 / 25 / 2
Регистрация: 23.10.2013
Сообщений: 2,326
20.03.2015, 17:03 2
а через HttpClient нельзя и распарсить JSON ответа?? Пробовал так??
1
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 898
20.03.2015, 17:03 3
dajver, никогда ничего не парсил, но стало интересно(футбол, все дела))
вот что заметил, мож поможет - если можно спарсить элементы которые отображаются в коде("Просмотреть код страницы" в хроме)...элементы которые отображаются в "Просмотр код элемента" не парсятся(генерятся JavaScriptом)...эт как я для себя понял)
Для эксперимента попробуйте спарсить:
Java
1
Elements newsRawTag = doc.select("#overall-formation-weekly-content");
1
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,074
20.03.2015, 18:42 4
Цитата Сообщение от dajver Посмотреть сообщение
но jsoup не хочет хватать вот такой айдишник top-team-stats-summary-grid
А может там такого id и нет? Я не нашел.
1
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
20.03.2015, 23:22  [ТС] 5
Цитата Сообщение от yura91 Посмотреть сообщение
а через HttpClient нельзя и распарсить JSON ответа?? Пробовал так??
Как мне получить оттуда json ?) Что то я вас не совсем понимаю

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

Цитата Сообщение от Rube Посмотреть сообщение
А может там такого id и нет? Я не нашел.
http://data3.floomby.com/files/share...5WlP55I0kw.jpg
0
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,074
21.03.2015, 19:51 6
А если так
1
Миниатюры
Вытащить из сайта определенную таблицу  
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 898
21.03.2015, 20:29 7
dajver,
Цитата Сообщение от dajver Посмотреть сообщение
http://data3.floomby.com/files/share...5WlP55I0kw.jpg
если нажать в хроме "Просмотр кода страницы", то вы top-team-stats-summary-grid не найдете, меня тоже это немного сбило с толку(вот как раз таки из этого кода можно парсить по айдишникам)
"Просмотр кода элемента"- айдишники отсюда не парсятся
Как я понял, в первом случае как я понимаю отображается каркас страницы без отработки скриптов, во втором уже сгенерированная скриптами страница.
1
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
21.03.2015, 22:45  [ТС] 8
То есть спарсить страницу не выйдет? Оно генерирует новые айдишники каждый раз когда заходишь на сайт?
0
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 898
21.03.2015, 22:56 9
dajver,
Цитата Сообщение от dajver Посмотреть сообщение
То есть спарсить страницу не выйдет?
как я уже писал опыта парсить у меня нет, но неразрешимых ситуаций нет
Цитата Сообщение от dajver Посмотреть сообщение
Оно генерирует новые айдишники каждый раз когда заходишь на сайт?
нет, айдишники всегда теже.
они просто динамически генерируются наверн
1
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
22.03.2015, 13:35  [ТС] 10
Ну раз они генерируются динамически то и впоймать нужный возможности нет) нужно парсить все страницу и выкусывать кусок который не генерируется динамически, это я единственный способ вижу такой...
0
22.03.2015, 13:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.03.2015, 13:35

Нужно вытащить определенную часть текста из файла.
така ситуация: есть текстовый файл, в котором есть уникальное, периодически...

Экспорт таблицы из Access в определенную таблицу Excel
Добрый день. Интересует такой вопрос, можно ли определенную таблицу из Access...

WebBrowser: показывать только определенную часть сайта
Как можно в компоненте WebBrowser, при переходе на сайт показывать, только...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

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