麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

基于webmagic爬取并下載百度圖片

2019-11-11 07:34:21
字體:
來源:轉載
供稿:網友

最近想下載一些圖片,在一次一次另存為之后實在受不了了,于是寫了一個小程序直接把圖片下載下來

現把代碼貼出,以供參考吧

import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import us.codecraft.webmagic.Page;import us.codecraft.webmagic.Spider;import java.io.DataInputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.net.MalformedURLException;import java.net.URL;import java.util.ArrayList;import java.util.List;/** * 下載百度圖片 * * @author bruce_q * @create 2017-02-03 11:12 **/public class DownloadPicture extends BasePRocessor{    static List<String> urls;    static List<String> names;    public void setUrls(List<String> urls) {        this.urls = urls;    }    public void setNames(List<String> names) {        this.names = names;    }    /**     * 下載圖片     * author:bruce_q     * 2017-2-5 20:47     *     * @param urlList     * @param nameList     */    private void downloadPicture(ArrayList<String> urlList,ArrayList<String> nameList,String key) {        URL url = null;        for (int i=0;i<urlList.size();i++) {            try {                url = new URL(urlList.get(i));                DataInputStream dataInputStream = new DataInputStream(url.openStream());                String imageName = i + ".jpg";                File file=new File("d://pic//"+key);    //設置下載路徑                if(!file.isDirectory()){                    file.mkdirs();                }                FileOutputStream fileOutputStream = new FileOutputStream(new File("d://pic//"+ key +"//"+ imageName.trim()));                byte[] buffer = new byte[1024];                int length;                while ((length = dataInputStream.read(buffer)) > 0) {                    fileOutputStream.write(buffer, 0, length);                }                dataInputStream.close();                fileOutputStream.close();            } catch (MalformedURLException e) {                e.printStackTrace();            } catch (IOException e) {                e.printStackTrace();            }        }    }    @Override    public void process(Page page) {        List<String> url_list = new ArrayList<>();        List<String> name_list = new ArrayList<>();        JSONObject jsonObject = (JSONObject) JSONObject.parse(page.getRawText());        JSONArray data = (JSONArray) jsonObject.get("data");        for(int i=0;i<data.size();i++){            String url = (String) data.getJSONObject(i).get("thumbURL");            String name = (String) data.getJSONObject(i).get("fromPageTitleEnc");            if(url!=null){                url_list.add(url);                name_list.add(name);            }        }        setUrls(url_list);        setNames(name_list);    }    public static void main(String[] args) {        String key = "乘風破浪";    //百度圖片 關鍵詞        DownloadPicture downloadPicture = new DownloadPicture();        ArrayList<String> nameList = new ArrayList<>();        ArrayList<String> urlList = new ArrayList<>();        for(int i=0;i<2;i++){   //控制爬取頁數,一頁30張圖片            String url = "https://image.baidu.com/search/acjson?tn=resultjson_com&ipn=rj&queryWord="+key+"&word="+key+"&pn="+i*3+"0";            Spider.create(new DownloadPicture())                .addUrl(url)                .run();            urlList.addAll(urls);            nameList.addAll(names);        }        downloadPicture.downloadPicture(urlList,nameList,key);    }}

圖片是能直接下載下來,誰有好的關鍵字(你懂得(*^__^*) )記得留言
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 精品国产一区二区三区免费 | 黄色片在线免费播放 | 99国产精品自拍 | 国产乱乱视频 | 成人辣文 | 日韩午夜一区二区三区 | 成人毛片av在线 | 国产亚洲精品久久久久久久久久 | 国产精品一区二区三区在线看 | 禁漫天堂久久久久久久久久 | 99精品电影 | 久久99精品久久久久久园产越南 | 欧美三区在线 | 亚洲码无人客一区二区三区 | 污视频在线免费播放 | 1级片在线观看 | 巨乳毛片 | 国内精品久久久久影院不卡 | 国内久久久久 | 日韩视频一区二区在线观看 | 欧美性生活区 | 综合网日日天干夜夜久久 | 青草av.久久免费一区 | 精品午夜影院 | 日韩色视频在线观看 | 国产精品久久久久久久久久久久久久久久 | 欧美三级一级 | 国产精品91在线 | 欧美xxxx精品另类 | 亚洲综合精品 | 国产精品av久久久久久网址 | 免费黄色大片在线观看 | 日韩毛片一区二区三区 | 色阁五月 | 深夜福利视频免费观看 | 欧美视频国产精品 | 性爱视频免费 | 国产91久久久久久 | 操操插插 | 超级av在线 | 成人男女啪啪免费观看网站四虎 |