Java與Python下載Bing首頁圖片

來源:互聯網
上載者:User

標籤:httpclient   bing   圖片   爬蟲   python   

Java與Python下載Bing首頁圖片一,首先是Java代碼
import org.apache.http.HttpEntity;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpGet;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.util.EntityUtils;import java.io.*;import java.text.SimpleDateFormat;import java.util.Date;import java.util.regex.Matcher;import java.util.regex.Pattern;public class DownloadImg {    public static void writeImgEntityToFile(HttpEntity imgEntity,String fileAddress) {        File storeFile = new File(fileAddress);        FileOutputStream output = null;        try {            output = new FileOutputStream(storeFile);            if (imgEntity != null) {                InputStream instream;                instream = imgEntity.getContent();                byte b[] = new byte[8 * 1024];                int count;                while ((count = instream.read(b)) != -1) {                    output.write(b, 0, count);                }            }        } catch (FileNotFoundException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        } finally {            try {                output.close();            } catch (IOException e) {                e.printStackTrace();            }        }    }    public static void main(String[] args) {        System.out.println("擷取Bing圖片地址中……");        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");        CloseableHttpClient httpClient = HttpClients.createDefault();        HttpGet httpGet = new HttpGet("http://cn.bing.com/");        CloseableHttpResponse response = null;        try {            response = httpClient.execute(httpGet);            Pattern p = Pattern.compile("http://.*?\\.jpg");            Matcher m = p.matcher(EntityUtils.toString(response.getEntity()));            String address = null;            if (m.find()) {                address = m.group();            } else {                System.exit(0);            }            System.out.println("圖片地址:" + address);            System.out.println("正在下載……");            HttpGet getImage = new HttpGet(address);            CloseableHttpResponse responseImg = httpClient.execute(getImage);            HttpEntity entity = responseImg.getEntity();            writeImgEntityToFile(entity,dateFormat.format(new Date()) + ".jpg");            System.out.println("下載完畢.");        } catch (IOException e) {            e.printStackTrace();        } finally {            try {                httpClient.close();                response.close();            } catch (IOException e) {                e.printStackTrace();            }        }    }}
二,Python代碼
#!/usr/bin/python#encoding:utf-8import timeimport urllibimport rehtml = urllib.urlopen("http://cn.bing.com/").read()imgAddress = re.search(r"http://.*?\.jpg",html)if imgAddress:    fileName = time.strftime("%Y-%m-%d") + ".jpg"    print "今天Bing圖片的地址是:" + imgAddress.group()    print "正在下載……"    urllib.urlretrieve(imgAddress.group(), fileName)    print "下載完畢!" + "儲存為" + fileNameelse:    print "今天貌似出問題了……"

Java與Python下載Bing首頁圖片

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.