【问题标题】:how to get parse this span id element with jsoup in android studio?如何在android studio中使用jsoup解析这个span id元素?
【发布时间】:2020-09-13 17:34:44
【问题描述】:

我想在我的 android studio 项目中从这个 url 解析 span id = shd2b, https://www.exchangerates.org.uk/Euros-to-Rupees-currency-conversion-page.html

Screenshot in link below

我使用下面的 java 代码来解析它并显示在一个 textview 框中。

@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 studio,并且刚接触堆栈溢出。

【问题讨论】:

  • span 不是 id 的一部分。 id 只是"shd2b"。
  • @FedericoklezCulloca id 是"shd2b;"。
  • 您好,非常感谢您的回复。是的,我注意到跨度 ID 中的错误。我修改了 span id 并更改了 doc = Jsoup.connect(url).get();在我的代码中。当我再次尝试执行代码时,textview 没有显示 span id 内容。当我尝试使用 eurotoinr = document.title(); 解析标题时url 的标题显示正确。我不知道我在哪里犯了错误。请帮帮我。

标签: java html android-studio jsoup


【解决方案1】:

我看到了两个错误。

  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 并正确解析。

  1. 您的代码doc.getElementById("span.shd2b"); 将返回null,因为span.shd2b 不是有效的ID。 id 是shd2b; 使用doc.getElementById("shd2b;"); 并选择预期元素:
<span id="shd2b;">82.9337</span>

【讨论】:

  • eurotoinr = document.getElementById("shd2b;"); doc = Jsoup.connect(url).get();在我的程序中进行了这两项更改,但 textview 框中没有显示任何内容,并且应用程序在几秒钟后在我的模拟器中崩溃。请帮帮我
  • 看起来像是一个单独的问题,因为它不再与 jsoup 相关。如果你喜欢这个答案记得mark it as accepted。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-18
  • 1970-01-01
  • 2021-12-24
  • 1970-01-01
  • 2012-04-18
  • 1970-01-01
相关资源
最近更新 更多