JAVA实现自动打开URL对应的网页并保存为图片-不借助第三方API
来源:互联网 发布:qq飞车雷诺官方数据 编辑:程序博客网 时间:2024/05/16 17:53
基本原理:
JDK6u10版本以上提供了DeskTop的API接口支持,可以根据URI参数自动打开
操作系统默认的浏览器来加载对应的网页,同时借助JDK的Robot类实现自动截屏
这样就完成了对任意一个URL对应网页保存为图片。程序如下:
package com.gloomyfish.image.util;import java.awt.AWTException;import java.awt.Rectangle;import java.awt.Robot;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import java.net.URI;import javax.imageio.ImageIO;public class DeskTopTest {public static void main(String[] args) {if (!java.awt.Desktop.isDesktopSupported()) {System.err.println("Desktop is not supported (fatal)");System.exit(1);}java.awt.Desktop desktop = java.awt.Desktop.getDesktop();if (!desktop.isSupported(java.awt.Desktop.Action.BROWSE)) {System.err.println("Desktop doesn't support the browse action (fatal)");System.exit(1);}try {URI uri = URI.create("http://www.csdn.net");desktop.browse(uri);Thread.sleep(8000); // 8 seconds is enough to load the any page.Robot robot = new Robot();// Rectangle rectangle = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize() );Rectangle rectangle = new Rectangle(300, 90, 1000, 720);BufferedImage image = robot.createScreenCapture(rectangle);File outputfile = new File("D:\\agriculture\\test.jpg");ImageIO.write(image, "jpg", outputfile);} catch (IOException e) {e.printStackTrace();} catch (AWTException e) {e.printStackTrace();} catch (InterruptedException e) {e.printStackTrace();} }}缺点:
程序运行时用户不能有其它操作,否则可能保存错误截屏。 这里
假设加载一个网页时间最长为8秒.
转载请注明出自gloomyfish
- JAVA实现自动打开URL对应的网页并保存为图片-不借助第三方API
- 从buffer快速保存pgm图片,不借助第三方库
- java 实现根据url,将url对应的网页存为一张完整的图片,不是截图,也就是图片是整个网页的内容
- Java 根据url下载图片 并 保存到对应的本地的新建文件夹中
- 不借助第三方程序 无需ie拨号 自动实现adsl拨号上网【ALLyeSNO】
- 不借助第三方jar包实现文件上传
- python 不借助第三方包实现xml转json
- 通过网页Url,保存为图片
- java操作word模板不借助第三方软件包
- 不借助第三方变量实现两个整数变量值的互换
- 异或^实现A,B值的替换【不借助第三方变量、数组等】
- 不借助任何第三方图像识别,靠着自己的思路一步一步实现魔方图像识别
- 不借助第三方 Win7搞定无法删除的文件
- 不借助第三方工具,查看SQL的执行计划
- 交换两个数的值,不借助第三方变量.
- 交换两个数的值,不借助第三方变量
- 本人原创:链接对应的网页保存为图片,用时:瞬间,适合任何网页
- 借助第三方的力量
- JSF入门三(第一个JSF程序)
- JSF入门四(简单的导航)
- JSF入门五(导航规则设置)
- JSF入门六(JSF Expression Language)
- JSF入门七(国际化信息)
- JAVA实现自动打开URL对应的网页并保存为图片-不借助第三方API
- JSF入门八(Managed Beans)
- JSF入门九(标准转换器)
- JSF入门十(自定义转换器)
- JSF入门十一(标准验证器)
- 巴巴运动网商品交易系统的架构
- 巴巴运动网商品交易系统对分页的封装
- JSF入门十二(自定义验证器)
- JSF入门十三(错误信息处理)