必应(http://cn.bing.com/)每日图片下载
2016-06-15 17:40
791 查看
/** * Created on 2016年6月15日 */ package com.bing; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.text.SimpleDateFormat; import java.util.Date; import org.apache.http.HttpResponse; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; /** * @author zhenggm<a href="mailto:zhenggm@chsi.com.cn">zhenggm</a> * @version $Id$ */ public class DownloadImg { public static void main(String[] args) { String url = "http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1"; HttpClient client = HttpClients.createDefault(); HttpGet get = new HttpGet(url); try { HttpResponse response = client.execute(get); JSONObject json = JSON.parseObject(EntityUtils.toString(response.getEntity())); JSONArray obj = (JSONArray) JSONArray.parse(json.get("images").toString()); String resourceUrl = obj.getJSONObject(0).get("url").toString(); HttpGet request = new HttpGet(resourceUrl); HttpResponse resp = client.execute(request); if (resp.getStatusLine().getStatusCode() == 200) { InputStream in = resp.getEntity().getContent(); byte[] b = new byte[1024]; int len = 0; String path = "E:/testImage/bing/"; File folder = new File(path); if (!folder.exists()) { folder.mkdirs(); } SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); File f = new File(path + sdf.format(new Date()) + ".jpg"); if (!f.exists()) { f.createNewFile(); } OutputStream out = new FileOutputStream(f); while ((len = in.read(b)) != -1) { out.write(b, 0, len); } out.close(); System.out.println("File is stored in: " + path); } } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
相关文章推荐
- curl模拟Http请求
- 网络与线程编程(第七节:TCP与数据包)
- HTTP Headers 的方方面面
- HTTP Header 简介
- IIS7.0 Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站
- Apache中Httpd.conf详解
- HTTP协议、基本认证
- Tcp 端口扫描器 (Python)
- 图解HTTPS、GET和POST
- OkHttp学习总结
- 简单的TCP通讯
- android-async-http 源码流程浅析
- 一篇学习HTTP状态码的神文:爱情的力量、生活的乐趣
- 移动端网络优化
- https://isux.tencent.com/svg-animate.html(svg动画)
- HTTP 协议详解
- python socket模拟一个http Get请求页面
- HTTP 协议之压缩
- 错误:HttpServlet was not found on the Java
- Type 'System.IO.FileStream' with data contract name 'FileStream:http://schemas.datacontract.org/2004/07/System.IO' is not expected.