歡迎您的來訪!有源碼,好建站(m.bmm520.net)源碼海洋源碼網為您提供快速建站平臺.
      當前位置: 首頁 > 行業資訊 > java資料 >

      大家快來看Java 網絡爬蟲獲取網頁源代碼原理及實現

      時間:2019-01-25 20:23來源:未知 作者:源碼海洋 點擊:
      大家快來看Java 網絡爬蟲獲取網頁源代碼原理及實現 1. 網絡爬蟲 是一個自動提取網頁的程序,它為搜索引擎從萬維網上下載網頁,是搜索引擎的重要組成。傳統爬蟲從一個或若干初始網頁的 URL 開始,獲得初始網頁上的 URL ,在抓取網頁的過程中,不斷從當前頁面

       大家快來看Java 網絡爬蟲獲取網頁源代碼原理及實現

        1.網絡爬蟲是一個自動提取網頁的程序,它為搜索引擎從萬維網上下載網頁,是搜索引擎的重要組成。傳統爬蟲從一個或若干初始網頁的URL開始,獲得初始網頁上的URL,在抓取網頁的過程中,不斷從當前頁面上抽取新的URL放入隊列,直到滿足系統的一定停止條件。

        2.那么程序獲取網頁的原理到底是怎么回事呢?看下面的圖:客服端首先向服務器端發出Http請求,之后服務器端返回相應的結果或者請求超時客戶端自己報錯。

        服務器端發出的Http請求,實際上說是對服務器的文件的請求。下面的表格是一些常見的HTTP請求對應的文件。(因為第一列給出的都是主機的網址信息,主機一般都通過配置文件將該請求轉換為網站主頁地址index.phpindex.jsp或者index.html等)

      HTTP請求

      HTTP對應的文件

       http://www.baidu.com

       http://www.baidu.com/index.php

       http://www.sina.com.cn

       http://www.sina.com.cn/index.html

       http://www.cnblogs.com

       http://www.cnblogs.com/index.html

       http://ac.jobdu.com

       http://ac.jobdu.com/index.php

         3.java實現網頁源碼獲取的步驟:

        (1)新建URL對象,表示要訪問的網址。如:url=new URL("http://www.sina.com.cn");

        (2)建立HTTP連接,返回連接對象urlConnection對象。如:urlConnection = (HttpURLConnection)url.openConnection();

        (3)獲取相應HTTP 狀態碼。如responsecode=urlConnection.getResponseCode();

        (4)如果HTTP 狀態碼為200,表示成功。從urlConnection對象獲取輸入流對象來獲取請求的網頁源代碼。

        4.java獲取網頁源碼代碼:

       

      import java.io.BufferedReader;

      import java.io.InputStreamReader;

      import java.net.HttpURLConnection;

      import java.net.URL;

      public class WebPageSource {

          public static void main(String args[]){    

              URL url;

              int responsecode;

              HttpURLConnection urlConnection;

              BufferedReader reader;

              String line;

              try{

                  //生成一個URL對象,要獲取源代碼的網頁地址為:http://www.sina.com.cn

                  url=new URL("http://www.sina.com.cn");

                  //打開URL

                  urlConnection = (HttpURLConnection)url.openConnection();

                  //獲取服務器響應代碼

                  responsecode=urlConnection.getResponseCode();

                  if(responsecode==200){

                      //得到輸入流,即獲得了網頁的內容

                      reader=new BufferedReader(new InputStreamReader(urlConnection.getInputStream(),"GBK"));

                      while((line=reader.readLine())!=null){

                          System.out.println(line);

                      }

                  }

                  else{

                      System.out.println("獲取不到網頁的源碼,服務器響應代碼為:"+responsecode);

                  }

              }

              catch(Exception e){

                  System.out.println("獲取不到網頁的源碼,出現異常:"+e);

              }

          }

      }

      (責任編輯:源碼海洋)本文地址:http://m.bmm520.net/info/java/2019/0125/17174.html

      推薦資訊

      亚洲人成无码www久久久| 亚洲精品乱码久久久久久蜜桃| 亚洲黄色免费网站| 亚洲乱亚洲乱妇无码| 久久精品国产亚洲香蕉| 国产精品亚洲AV三区| 亚洲欧洲日产v特级毛片| 曰韩亚洲av人人夜夜澡人人爽| 亚洲精品国产精品国自产网站| 亚洲人成网站在线播放vr| 亚洲第一se情网站| 无码亚洲成a人在线观看| 亚洲人成电影青青在线播放| 亚洲国产精品高清久久久| 亚洲成AV人在线观看网址| 2020亚洲男人天堂精品| 亚洲精品国精品久久99热一| 亚洲国产综合精品中文字幕| 亚洲精品无码专区2| 久久久久国产成人精品亚洲午夜 | 亚洲精品在线电影| 久久久久亚洲精品无码系列| 亚洲va在线va天堂va不卡下载 | 久久久久无码精品亚洲日韩| 老司机亚洲精品影院无码| 国产亚洲精品福利在线无卡一| 亚洲永久无码3D动漫一区| 亚洲第一黄片大全| 在线亚洲精品自拍| 亚洲av无码一区二区乱子伦as| 国产亚洲精品看片在线观看| 亚洲午夜久久久影院| 久久久久亚洲AV片无码| 中文字幕亚洲综合久久2| 亚洲区视频在线观看| 亚洲色偷偷综合亚洲av78| 国产成人亚洲精品电影| 在线观看亚洲AV日韩A∨| 亚洲国产精品成人久久久| 久久亚洲国产成人影院| 人人狠狠综合久久亚洲|