最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java讀取網(wǎng)頁內容并下載圖片的實例

 更新時間:2017年09月25日 17:03:14   作者:Lovnx  
這篇文章主要介紹了Java讀取網(wǎng)頁內容并下載圖片的實例的相關資料,希望通過本文能幫助到大家,讓大家實現(xiàn)這樣的功能,需要的朋友可以參考下

Java讀取網(wǎng)頁內容并下載圖片的實例

     很多人在第一次了解數(shù)據(jù)采集的時候,可能無從下手,尤其是作為一個新手,更是感覺很是茫然,所以,在這里分享一下自己的心得,希望和大家一起分享技術,如果有什么不足,還請大家指正。寫出這篇目的,就是希望大家一起成長,我也相信技術之間沒有高低,只有互補,只有分享,才能使彼此更加成長。  

示例代碼:

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class GetContentPicture {
public void getHtmlPicture(String httpUrl) {
URL url;
BufferedInputStream in;
FileOutputStream file;
try {
  System.out.println("取網(wǎng)絡圖片");
  String fileName = httpUrl.substring(httpUrl.lastIndexOf("/"));
  String filePath = "./pic/";
  url = new URL(httpUrl);

  in = new BufferedInputStream(url.openStream());

  file = new FileOutputStream(new File(filePath+fileName));
  int t;
  while ((t = in.read()) != -1) {
  file.write(t);
  }
  file.close();
  in.close();
  System.out.println("圖片獲取成功");
} catch (MalformedURLException e) {
  e.printStackTrace();
} catch (FileNotFoundException e) {
  e.printStackTrace();
} catch (IOException e) {
  e.printStackTrace();
}
}

public String getHtmlCode(String httpUrl) throws IOException {
String content ="";
URL uu = new URL(httpUrl); // 創(chuàng)建URL類對象
BufferedReader ii = new BufferedReader(new InputStreamReader(uu
  .openStream())); // //使用openStream得到一輸入流并由此構造一個BufferedReader對象
String input;
while ((input = ii.readLine()) != null) { // 建立讀取循環(huán),并判斷是否有讀取值
  content += input;
}
ii.close();
return content;
}

public void get(String url) throws IOException {

String searchImgReg = "(?x)(src|SRC|background|BACKGROUND)=('|\")/?(([\\w-]+/)*([\\w-]+\\.(jpg|JPG|png|PNG|gif|GIF)))('|\")";
String searchImgReg2 = "(?x)(src|SRC|background|BACKGROUND)=('|\")(http://([\\w-]+\\.)+[\\w-]+(:[0-9]+)*(/[\\w-]+)*(/[\\w-]+\\.(jpg|JPG|png|PNG|gif|GIF)))('|\")";

String content = this.getHtmlCode(url);
System.out.println(content);

Pattern pattern = Pattern.compile(searchImgReg);
Matcher matcher = pattern.matcher(content);
while (matcher.find()) {
  System.out.println(matcher.group(3));
  this.getHtmlPicture(url+matcher.group(3));

}

pattern = Pattern.compile(searchImgReg2);
matcher = pattern.matcher(content);
while (matcher.find()) {
  System.out.println(matcher.group(3));
  this.getHtmlPicture(matcher.group(3));

}
// searchImgReg =
// "(?x)(src|SRC|background|BACKGROUND)=('|\")/?(([\\w-]+/)*([\\w-]+\\.(jpg|JPG|png|PNG|gif|GIF)))('|\")";
}
public static void main(String[] args) throws IOException {
String url = "http://www.baidu.com/";
GetContentPicture gcp = new GetContentPicture();
gcp.get(url);
}
}

如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • Java多線程之異步Future機制的原理和實現(xiàn)

    Java多線程之異步Future機制的原理和實現(xiàn)

    這篇文章主要為大家詳細介紹了Java多線程之異步Future機制的原理和實現(xiàn),感興趣的小伙伴們可以參考一下
    2016-08-08
  • springboot讀取application.yaml文件數(shù)據(jù)的方法

    springboot讀取application.yaml文件數(shù)據(jù)的方法

    這篇文章主要為大家詳細介紹了springboot讀取application.yaml文件數(shù)據(jù)的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • Java設計模式的策略模式簡析

    Java設計模式的策略模式簡析

    這篇文章主要介紹了Java設計模式的策略模式簡析,策略模式中定義了一系列的算法族,算法族指的是類似于一系列的行為、策略,策略模式將一系列的行為封裝成類,既可以說是將每一種相類似的行為都封裝成一個類,也有可能存在特殊的不進行封裝的行為,需要的朋友可以參考下
    2023-12-12
  • Java微信公眾平臺之群發(fā)接口(高級群發(fā))

    Java微信公眾平臺之群發(fā)接口(高級群發(fā))

    這篇文章主要為大家詳細介紹了Java微信公眾平臺之群發(fā)接口,高級群發(fā)功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • SpringCloud開發(fā)課程查詢功能

    SpringCloud開發(fā)課程查詢功能

    這篇文章主要介紹了SpringCloud開發(fā)課程查詢功能,本文通過圖文實例相結合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • SpringSecurit鹽值加密的密碼驗證以及強密碼驗證過程

    SpringSecurit鹽值加密的密碼驗證以及強密碼驗證過程

    在密碼加密過程中,鹽值的使用可以增強密碼的安全性,如果忘記存儲鹽值,將無法驗證密碼,強密碼應包含數(shù)字、字母和特殊字符,長度應在8到30位之間,以提高賬戶安全
    2023-03-03
  • java實現(xiàn)文件上傳下載至ftp服務器

    java實現(xiàn)文件上傳下載至ftp服務器

    這篇文章主要為大家詳細介紹了java實現(xiàn)文件上傳下載至ftp服務器的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Java FtpClient 實現(xiàn)文件上傳服務

    Java FtpClient 實現(xiàn)文件上傳服務

    本文主要對Java FtpClient實現(xiàn)簡單的圖片上傳到服務器的方法進行介紹,并且展示的小demo中,對配置過程中主要碰到的問題:關于文件權限的問題也進行了說明,下面跟著小編一起來看下吧
    2016-12-12
  • Java自動化工具Ant的基礎使用教程

    Java自動化工具Ant的基礎使用教程

    這篇文章主要介紹了Java自動化工具Ant的基礎使用教程,例子在Windows系統(tǒng)下操作演示,講解了Ant基本的文件操作和屬性,需要的朋友可以參考下
    2016-02-02
  • 全排列算法-遞歸與字典序的實現(xiàn)方法(Java)

    全排列算法-遞歸與字典序的實現(xiàn)方法(Java)

    下面小編就為大家?guī)硪黄帕兴惴?遞歸與字典序的實現(xiàn)方法(Java) 。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04

最新評論

忻州市| 邛崃市| 商河县| 壤塘县| 儋州市| 巩义市| 崇州市| 维西| 疏勒县| 上犹县| 谢通门县| 扎兰屯市| 西平县| 安化县| 峨眉山市| 顺平县| 武川县| 友谊县| 赣榆县| 卢湾区| 宁城县| 临西县| 石嘴山市| 新密市| 莱阳市| 井冈山市| 安吉县| 金坛市| 江都市| 辽宁省| 石柱| 凌海市| 芮城县| 江孜县| 新丰县| 商城县| 洛隆县| 炎陵县| 平潭县| 陕西省| 华容县|