使用java開源項目Jsoup抓取遠程圖片
package com.open;import java.io.; import java.net.URL; import java.util.logging.Level; import java.util.logging.Logger; import java.io.; import java.util.logging.Level; import java.util.logging.Logger; import org.jsoup.Jsoup;
import org.jsoup.nodes.Attributes; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import java.io.IOException; import java.net.URL;
public class DownloadImages {
//The url of the website. This is just an example private static final String webSiteURL = "http://www.baiduhome.net"; //The path of the folder that you want to save the images to private static final String folderPath = "<FOLDER PATH>"; public static void main(String[] args) { try { //Connect to the website and get the html Document doc = Jsoup.connect(webSiteURL).get(); //Get all elements with img tag , Elements img = doc.getElementsByTag("img"); for (Element el : img) { //for each element get the srs url String src = el.absUrl("src"); System.out.println("Image Found!"); System.out.println("src attribute is : "+src); getImages(src); } } catch (IOException ex) { System.err.println("There was an error"); Logger.getLogger(DownloadImages.class.getName()).log(Level.SEVERE, null, ex); } } private static void getImages(String src) throws IOException { String folder = null; //Exctract the name of the image from the src attribute int indexname = src.lastIndexOf("/"); if (indexname == src.length()) { src = src.substring(1, indexname); } indexname = src.lastIndexOf("/"); String name = src.substring(indexname, src.length()); System.out.println(name); //Open a URL Stream URL url = new URL(src); InputStream in = url.openStream(); OutputStream out = new BufferedOutputStream(new FileOutputStream( folderPath+ name)); for (int b; (b = in.read()) != -1;) { out.write(b); } out.close(); in.close(); }
} </pre>
本文由用戶 ecfc 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!