zoukankan      html  css  js  c++  java
  • jsoup抓取豆瓣美女

    package com.huowolf;
    
    import java.io.BufferedOutputStream;
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.net.URL;
    
    import org.jsoup.Jsoup;
    import org.jsoup.nodes.Document;
    import org.jsoup.nodes.Element;
    import org.jsoup.select.Elements;
    
    public class Demo4 {
    	
    	private static final String url = "http://www.dbmeinv.com/?p=";
    	private static final String picPath = "d:/picTest";
    	private static String USER_AGENT="Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0";
    	
    	public static void main(String[] args) {
    		System.out.println("下载完的图片位于d:/picTest");
    		for (int i = 0; i < 50; i++) {
    				try {
    				Document doc = Jsoup.connect(url+i).userAgent(USER_AGENT).timeout(3000).data("pager_offset", i+1+"").post();
    				Elements img = doc.select("img");
    				for (Element ele : img) {
    					String src = ele.absUrl("src");
    					//System.out.println(src);
    					getImage(src);
    				}
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    		}
    		
    		System.out.println("这些足够多了。");
    		System.out.println("图片下载完毕。");
    	}
    	
    	
    	private static void getImage(String src) {
    		int indexName = src.lastIndexOf("/");
    		String name = src.substring(indexName, src.length());
    		//System.out.println(name);
    		InputStream in = null;  
    		OutputStream out = null;
    		try {
    			URL url = new URL(src);
    			in = url.openStream();
    			
    			//创建目录
    			File files = new File(picPath);
    			if(!files.exists())
    				files.mkdirs();
    			
    			out = new BufferedOutputStream(new FileOutputStream(files+name));
    			for(int b;(b=in.read())!=-1;)
    				out.write(b);
    		} catch (Exception e) {
    			e.printStackTrace();
    		}finally{
    			try {
    				out.close();
    				in.close();
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    			
    		}
    		
    	}
    }
    

    程序已打包,拿去双击就可以执行,下载地址:http://pan.baidu.com/s/1mgKiQiG

    执行结果图:


  • 相关阅读:
    如何安装mysql
    07 登录接口开发
    06 跨域问题
    05 实体校验
    04 异常处理
    03 整合shiro+jwt 会话共享
    02 统一结果封装
    01 新建SpringBoot项目 整合Mybatis Plus(Spring Boot 前后端分离)
    结合Scikit-learn介绍几种常用的特征选择方法
    Set_ML
  • 原文地址:https://www.cnblogs.com/brucemengbm/p/6715680.html
Copyright © 2011-2022 走看看