如何让jsoup使用Dreamweaver从网站显示图片?

时间:2014-04-19 22:35:59

标签: java jsoup dreamweaver dreamweaver-templates

我正在开发一个简单的应用程序,它显示图片就像tumblr和9gag。我无法完成它,我希望有人可以帮助我解决这个问题,我试图在一行中显示来自eversorandom.com的图片而没有标题或描述。

1 个答案:

答案 0 :(得分:0)

尝试一下:

添加以下权限:

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>

这里的代码:

List<Bitmap> items = new ArrayList<Bitmap>();

private class ImageGetter extends AsyncTask<String, Void, Document> {

    @Override
    protected Document doInBackground(String... params) {
        try {
            Document doc = Jsoup.connect(params[0]).get();
            for (int i=0; i<doc.select("div.tw_post*").size(); i++) {
                // Normal size:
                String normal = doc.select("div.tw_post*").get(i).select("a").select("img").attr("src").toString());

                // Large size:
                String hiRes = doc.select("div.tw_post*").get(i).select("a").select("img").attr("data-hi-res-src").toString());

                // Decodes Normal size image:
                BufferedInputStream in = new BufferedInputStream(new URL(normal).openStream());

                // Puts in "items" array list:
                items.add(BitmapFactory.decodeStream(in));

                // Closes stream:
                in.close();
            }
            return doc;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
    @Override
    protected void onPostExecute(Document result) {
        super.onPostExecute(result);
        if (result == null) {
            Toast.makeText(getApplicationContext(), "Error!", Toast.LENGTH_SHORT).show();
        } else {
            // what to do when some images are found
        }
    }

    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        // what to do before everything is done
    }
}

onCreate()方法或其他任何地方使用:

new ImageGetter().execute("http://eversorandom.com");