Java通過URL提取網站源碼

除了在網站右鍵另存爲保存網站源碼外,作爲一門無所不能的語言,java當然也能直接獲取網頁源碼,然後另存爲本地。
這裏使用的就是輸入輸出流。
直接將方法進行了封裝
代碼如下:
傳的三個參數分別爲:網站的URL,網站的編碼類型(UTF-8或者gbk或者gb2312等等) 以及文件的另存路徑

public static boolean getHtmlByUrl(String u,String charset,String htmlPath) throws IOException{
        boolean result = true;
        try {
            //通過url生成靜態頁面
            URL url = new URL(u);
            URLConnection connection = url.openConnection();
            //javase ---->io net inputStream 
            //獲取輸入流
            InputStream in = connection.getInputStream();

            //Buffered緩存Reader Writer
            BufferedReader reader = new BufferedReader(new InputStreamReader(in,charset));
            StringBuffer sBuffer = new StringBuffer();
            while(reader.ready()){
                sBuffer.append(reader.readLine()+"\n");
                //System.out.println(reader.readLine());
            }
            //關閉流
            reader.close();
            in.close();

            File file = new File(htmlPath);
            BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file),"gbk"));
            writer.write(sBuffer.toString());
            writer.close();
            result = true;

        } catch (MalformedURLException e) {
            e.printStackTrace();
        }


        return result;
    }

例如:
我要將www.baidu.com這個網站的源碼保存到我的本地磁盤D盤根目錄調用方法如下
getHtmlByUrl(“www.baidu.com”,”gbk”,”D:baidu.html”);
運行後便可在D盤根目錄下生成一個baidu.html的文件

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章