解析網(wǎng)頁中的部分內(nèi)容保存到本地

package com.pinjia.jyssc.util;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Calendar;

public class HtmlFile {
    public void captureHtml(String strURL) throws Exception {
        //String strURL = "http://www.163.com";
        URL url = new URL(strURL);
        
        HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();
        InputStreamReader input = new InputStreamReader(httpConn
                .getInputStream(), "utf-8");
        BufferedReader bufReader = new BufferedReader(input);
        String line = "";
        StringBuilder contentBuf = new StringBuilder();
        while ((line = bufReader.readLine()) != null) {
            contentBuf.append(line);
        }
        String buf = contentBuf.toString();
        int beginIx = buf.indexOf("<div class=\"list\">");
        int endIx = buf.indexOf("<div class=\"share\">");
        String result = buf.substring(beginIx, endIx)+"</div>";
        System.out.println(new File(".").getAbsolutePath());
        //String templatePath = "../template.html"; 
        
        String templatePath = "D:/template.html"; 
        FileInputStream fileInputStream = new FileInputStream(templatePath);
        int length = fileInputStream.available();
        byte[] bytes = new byte[length];
        fileInputStream.read(bytes);
        fileInputStream.close();
        String templateContent = new String(bytes);//?
        
        templateContent = templateContent.replaceAll("###content###", result);
        //System.out.println(templateContent);
        Calendar calendar = Calendar.getInstance();
        String fileName = String.valueOf(calendar.getTimeInMillis())+".html";
        fileName = "d:/"+fileName;
        FileOutputStream fileOutputStream = new FileOutputStream(fileName);
        System.out.println("文件輸出路徑:"+fileName);
        byte[] tag_bytes = templateContent.getBytes();
        fileOutputStream.write(tag_bytes);
        fileOutputStream.close();
        
    }
    
    public static void main(String[] args) {
            HtmlFile htmlFile = new HtmlFile();
        try {
            htmlFile.captureHtml("http://www.cncdt.com/lykx/2016/0824/3060.html");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容