0

我想解析一个 HTML 页面以获取 first.jpg 链接,并将其链接设置为 WebView,以便在应用程序上查看图像。我使用异步任务。它似乎有效,但我在 Try 块上遇到异常。在 LogCat 上,它只显示 ERROR PARSING ERROR(如您所见,这就是我在 Catch 组中选择的方式)。但是没有解释导致异常的原因。代码如下:

@Override
    protected String doInBackground(String... params) {
        TextView prova = (TextView)findViewById(R.id.searchedName);
        Document doc;
        try {
            doc = Jsoup.connect("[url]http://www.lolking.net/summoner/euw/42997801")
                     .userAgent("Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22")
                     .timeout(3000).get();
            String icon = doc.select("img[src$=.jpg]").first().text();
            WebView summonerIcon = (WebView)findViewById(R.id.webView1);
            summonerIcon.loadUrl(icon);
        } catch (Exception e) {
            Log.e("ERROR", "PARSING ERROR");
    }
    return null;

    }
4

5 回答 5

1
String icon = doc.select("img[src$=.jpg]").first().text();

将获取<img>标签中的文本。

您的代码应如下所示。

String icon = doc.select("img[src$=.jpg]").first().attr("src");
于 2013-10-01T13:02:56.907 回答
0

您可以使用:

Log.e("ERROR", "PARSING ERROR", e);

为了记录也e保留消息。

于 2013-10-01T11:55:24.283 回答
0

connect期望一个有效的URL. 删除"[url]" String方法参数中的

Document doc = Jsoup.connect("http://www.lolking.net/summoner/euw/42997801")
于 2013-10-01T11:56:10.240 回答
0

您不能View在非 UI 线程内操作 s - 在这种情况下AsyncTask。这可能会导致问题:

TextView prova = (TextView)findViewById(R.id.searchedName);
...
WebView summonerIcon = (WebView)findViewById(R.id.webView1);
summonerIcon.loadUrl(icon);
于 2013-10-01T12:00:03.050 回答
0

您是否在您的清单文件中授予在 android 清单文件中访问互联网的权限

于 2013-10-01T12:11:54.267 回答