根據java網絡編程相關的內容,使用jdk提供的相關類可以得到url對應網頁的html頁面代碼。
創新互聯專注于桃城網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供桃城營銷型網站建設,桃城網站制作、桃城網頁設計、桃城網站官網定制、重慶小程序開發服務,打造桃城網絡公司原創品牌,更為您提供桃城網站排名全網營銷落地服務。
針對得到的html代碼,通過使用正則表達式即可得到我們想要的內容。
比如,我們如果想得到一個網頁上所有包括“java”關鍵字的文本內容,就可以逐行對網頁代碼進行正則表達式的匹配。最后達到去除html標簽和不相關的內容,只得到包括“java”這個關鍵字的內容的效果。
從網頁上爬取圖片的流程和爬取內容的流程基本相同,但是爬取圖片的步驟會多一步。
需要先用img標簽的正則表達式匹配獲取到img標簽,再用src屬性的正則表達式獲取這個img標簽中的src屬性的圖片url,然后再通過緩沖輸入流對象讀取到這個圖片url的圖片信息,配合文件輸出流將讀到的圖片信息寫入到本地即可。
你也沒說是要把圖片下載下來還是什么的
這里我實現的是將圖片下載到電腦
import?java.io.File;
import?java.io.FileNotFoundException;
import?java.io.FileOutputStream;
import?java.io.IOException;
import?java.io.InputStream;
import?java.net.HttpURLConnection;
import?java.net.MalformedURLException;
import?java.net.URL;
public?class?DownLoad?{
public?static?void?main(String[]?args)?{
File?dstFile?=?new?File("E:/test/test/test.jpg");
try?{
URL?url?=?new?URL("");
HttpURLConnection?conn?=?(HttpURLConnection)?url.openConnection();
InputStream?is?=?conn.getInputStream();
saveFile(is,?dstFile);
}?catch?(MalformedURLException?e)?{
e.printStackTrace();
}?catch?(IOException?e)?{
e.printStackTrace();
}
}
public?static?void?saveFile(InputStream?is,File?dstFile){
FileOutputStream?fos?=?null;
File?parentFile?=?dstFile.getParentFile();
if(!parentFile.exists()){
parentFile.mkdirs();
}
try?{
fos?=?new?FileOutputStream(dstFile);
byte[]?buff?=?new?byte[1024?*?4];
int?len;
while((len?=?is.read(buff))?!=?-1){
fos.write(buff,?0,?len);
}
}?catch?(FileNotFoundException?e)?{
e.printStackTrace();
}?catch?(IOException?e)?{
e.printStackTrace();
}finally{
try{
if(is?!=?null){
is.close();
}
if(fos?!=?null){
fos.close();
}
}catch(IOException?e){
e.printStackTrace();
}
}
}
}
通過httpclient來爬取網站內容,分析當前內容頁中的圖片‘規則’
抓取一般都是模擬瀏覽器訪問目標網頁,通過返回的頁面html代碼進行分析自己需要的數據
查找規則,例如你爬取的網頁 ,看到當前頁面顯示的圖片格式如下img src=""
通過解析爬取的網頁源代碼(html)進行字符串的操作即可,現在有相應的第三方jar包可以幫你更快的完成這部分工作,例如htmlpaser,獲取到對應的地址,然后進行保存或下載。
你可以搜索,java爬蟲(httpclient)和htmlpaser做更多的了解。
思路:使用 java.awt.Image包下的Image可以接收圖片。讀取則使用ImageIO對象。
代碼如下:
/**
* 讀取圖片,首先導入以下的包
*/
import java.awt.Image;
import javax.imageio.ImageIO;
import java.io.*;
/**
* 用Image對象來接收圖片
* 路徑根據實際情況修改
*/
Image image = ImageIO.read(new File("c:\\1.png"));
System.out.println(image.getSource());
本文名稱:java怎么爬取圖片代碼 java爬取百度圖片
文章網址:http://vcdvsql.cn/article46/dopeieg.html
成都網站建設公司_創新互聯,為您提供軟件開發、小程序開發、自適應網站、品牌網站設計、網站營銷、網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯