Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
 
MrMistan
0 / 0 / 0
Регистрация: 10.09.2015
Сообщений: 11
#1

Вытянуть информацию с кода страницы сайта - Программирование Android

30.08.2016, 15:10. Просмотров 508. Ответов 20

Всем привет! Нашел пример в интернете как сделать простое приложение, которое считывает температуру с сайта. По кнопке Button обновляет температуру, а в TextView отображаем ее. Пытаюсь сделать его рабочим, но все без успешно - ничего не выводит. Скажите, что не так.
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
package com.example.marymistan.temperature;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.regex.*;
 
public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final Button btnRefreshTemperature = (Button) findViewById(R.id.btnRefreshTemperature);
 
        btnRefreshTemperature.setOnClickListener(new Button.OnClickListener(){
            @Override
            public void onClick(View view){
                RefreshTemper();
            }
        });
        RefreshTemper();
    }
 
    public String GetTemper(String urlsite) // функция загрузки температуры
    {
        String matchtemper = "";
        try
        {
            URL url = new URL(urlsite);
            URLConnection conn = url.openConnection();
            InputStreamReader rd = new InputStreamReader(conn.getInputStream());
            StringBuilder allpage = new StringBuilder();
            int n = 0;
            char[] buffer = new char[40000];
            while (n >= 0)
            {
                n = rd.read(buffer, 0, buffer.length);
                if (n > 0)
                {
                    allpage.append(buffer, 0, n);
                }
            }
 
            final Pattern pattern = Pattern.compile
                    ("^<li><b>Текущая:([-+0-9])°C</b></li>$");
            Matcher matcher = pattern.matcher(allpage.toString());
            if (matcher.find()){
                matchtemper = matcher.group(1);
            }
            return matchtemper;
        }
        catch (Exception e){
        }
        return matchtemper;
    }
 
    private void RefreshTemper(){
        final TextView textTemperature = (TextView) findViewById(R.id.textTemperature);
        String bashtemp = "";
        bashtemp = GetTemper("http://belmeteo.net/");
        textTemperature.setText(bashtemp.concat("°"));
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.08.2016, 15:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вытянуть информацию с кода страницы сайта (Программирование Android):

API Авито вытянуть информацию об объявлении - Программирование Android
Всем привет. Появилась нужда вытянуть информацию об объявлении, но при частом обращении к авито, они банят по ip. А мобильное...

Отпарсить страничку, вытянуть кусок кода между комментариями - Программирование Android
Всем привет. Такой вопрос, есть html страница, необходимый мне кусок кода заключен в 2х комментариях ( &lt;!--ON--&gt; и &lt;!--OFF--&gt;). Каким...

Как скопировать информацию с сайта и вставить её в приложение? - Программирование Android
На фотографиях не мое приложение, интересует создание такого приложения. Хотелось бы узнать как создается всплывающий список и как он...

Получение кода страницы - Программирование Android
Приложение закрывается после нажатия на кнопку почему? public class MainActivity extends Activity { EditText editText; String s...

Получение html кода страницы - Программирование Android
Помогите разобраться с получением html кода интернет страницы в приложении android, для последующего извлечения из неё информации.

Получение кода web страницы - Программирование Android
Не могу получить код web страницы: runOnUiThread(new Runnable() { @Override public void run() { try { ...

20
vxg
01.09.2016, 11:38     Вытянуть информацию с кода страницы сайта
  #16

Не по теме:

Цитата Сообщение от Паблито Посмотреть сообщение
если добавить e.printStackTrace();
то можно будет увидеть вживую android.os.NetworkOnMainThreadException
кстати, в этом самом стеке иногда вижу отличную подсказку вплоть до строки где произошла беда а иногда какую то лабудень про зиготу какую-то и вообще про методы ко мне отношения не имеющие - как сие понять ?

0
Pablito
01.09.2016, 11:42
  #17

Не по теме:

я всегда интуитивно смотрю ) начиная с самого верха
в крашлитикс часто прилетают ошибки и там нажимаешь show full stack и получаешь простыню на 15 страниц

0
vxg
01.09.2016, 11:51
  #18

Не по теме:

Паблито, тоже телепатирую, но жаль, думал вы откроете тайну зиготы)

0
MrMistan
0 / 0 / 0
Регистрация: 10.09.2015
Сообщений: 11
01.09.2016, 18:46  [ТС] #19
я через этот сайт и делал их(на сайте все ищут), но в приложении не работают
0
_Night_Scream_
76 / 75 / 8
Регистрация: 08.08.2013
Сообщений: 612
02.09.2016, 09:53 #20
MrMistan, есть книжка Android для разработчиков. 3-е издание
Там 7ая глава вам в тему, всё разжевано.

Не по теме:

она есть на просторах интернета

1
Pablito
2534 / 2013 / 627
Регистрация: 12.05.2014
Сообщений: 7,066
Завершенные тесты: 1
02.09.2016, 12:50 #21
Если уж так случилось и у сайта вообще нет api и нет другого выхода как вытягивать всю страницу и потом ее разбирать, я бы рекомендовал почитать про библиотеку JSOUP.
Не бежать тупо на форум что бы разжевали и помогли проглотить, а поработать с ней самостоятельно. Примеров в инете просто валом.
1
02.09.2016, 12:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.09.2016, 12:50
Привет! Вот еще темы с ответами:

Извлечение кода из страницы WebView - Программирование Android
Здравствуйте. Есть страница загруженная WebView с кодом авторизации, который нужно использовать в приложении. Как этот код можно...

Ошибка при парсинге страницы сайта - Программирование Android
В методе онклик пишу: public void onClick(View v) { Document doc = null; try { doc =...

Доступ из HTML кода страницы, загруженной в WebView, к данным приложения - Программирование Android
Возможно ли это? В частности, мне нужно передать джаваскрипту страницы версию установленного приложения.

Как можно, например из сайта gmail из исходного кода вытянуть пустой ли ящик !? - HTML, CSS
Хочу написать программу какая будет проверять есть ли там письма .? может кто то делал, или это не возможно !? дайте совет ).Раньше...


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

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

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