Java导出网页图片、Java导出图片、Java网页截图

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.UUID;

//网页全屏截图
public final class WebPageFullPicture {

	private WebPageFullPicture() {};

	public static void savePage(String url, String path) {
		if (!url.startsWith("http://")) {
			url = "http://" + url;
		}

		//String saveDir = PathUtils.getWebRootDirFilePath("flowImage");
		String phantomDir = PathUtils.getWebRootDirFilePath("phantomjs");
		System.out.println(phantomDir);

		StringBuffer buffer = new StringBuffer();
		buffer.append(phantomDir + "/phantomjs.exe ");
//		buffer.append(" c://");
		buffer.append(" --ignore-ssl-errors=yes ").append(
				"'"+phantomDir + "/examples/rasterize.js'  '").append(url + "' ").append(
				path);
		
		System.out.println(buffer.toString());
		
		

		try {
			Process process = Runtime.getRuntime().exec(buffer.toString());
			InputStream eis = process.getErrorStream();
			byte[] buf = new byte[1024];
			int len = 0;
			while ((len = eis.read(buf)) != -1) {
				System.out.println(new String(buf, 0, len));
			}
			eis.close();

			InputStream is = process.getInputStream();

			buf = new byte[1024];
			// len = 0;
			while ((len = is.read(buf)) != -1) {
				System.out.println(new String(buf, 0, len));
			}
			is.close();

//			File file = new File(WebPageFullPicture.class.getResource("/").getPath(),fileName);
//			if(file.exists()){
//				file.renameTo(new File(saveDir,fileName));
//			}
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

	public static void main(String[] args) {
		try {
			File file = new File("D:/tmp",UUID.randomUUID()+".png");
			WebPageFullPicture.savePage("http://www.baidu.com/index.php?tn=monline_5_dg", file.getAbsolutePath());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

  

    需要使用到  phantomjs

 

 

展开阅读全文

没有更多推荐了,返回首页