как получить синтаксический анализ этого элемента идентификатора диапазона с помощью jsoup в студии android? - PullRequest
0 голосов
/ 26 мая 2020

Я хочу проанализировать span id = shd2b из этого URL-адреса в моем android студийном проекте, https://www.exchangerates.org.uk/Euros-to-Rupees-currency-conversion-page.html

Снимок экрана в ссылке ниже

Я использовал приведенный ниже код java, чтобы проанализировать его и отобразить в текстовом поле.

@Override
        protected Void doInBackground(Void... voids) {
            //Connect to the website
            String url = "https://www.exchangerates.org.uk/Euros-to-Rupees-currency-conversion-page.html";
            //Get the title of the website
            Document doc = null;
            doc = (Document) Jsoup.parse(url);
            eurotoinr = doc.getElementById("span.shd2b");
            return null;
        }

        @Override
        protected void onPostExecute(Void aVoid) {
            progressDialog.dismiss();
            textView.setText((CharSequence) eurotoinr);
        }

Но ничего не отображается в устройстве эмулятора, когда я его запускаю. Может ли кто-нибудь помочь мне с этой проблемой?

Пожалуйста, простите меня, если мое описание нечеткое или непонятное. Я начал изучать студию android только во время этой блокировки и новичок в переполнении стека.

1 Ответ

0 голосов
/ 27 мая 2020

Я вижу две ошибки.

  1. Вы пытались отладить или показать, как ваш документ выглядит после синтаксического анализа? Это выглядит так:
<html>
 <head></head>
 <body>
  https://www.exchangerates.org.uk/Euros-to-Rupees-currency-conversion-page.html
 </body>
</html>

, потому что вы использовали неправильный метод, и ваша строка анализируется как HTML фрагмент. Он не пытается ничего загрузить.
Вы должны использовать

doc = Jsoup.connect(url).get();

Затем он загружает HTML и правильно анализирует.

Ваш код doc.getElementById("span.shd2b"); вернет null, потому что span.shd2b не является допустимым идентификатором. Идентификатор shd2b; Используйте doc.getElementById("shd2b;");, и он выбирает ожидаемый элемент:
<span id="shd2b;">82.9337</span>
...