python網絡爬蟲(一):網絡爬蟲科普與URL含義

1. 科普      html

     通用搜索引擎處理的對象是互聯網的網頁,目前網頁的數量數以億計,因此搜索引擎面臨的第一個問題是如何設計出高效的下載系統,已將海量的網頁下載到本地,在本地造成互聯網網頁的鏡像。網絡爬蟲就是擔當此大任的。瀏覽器

     抓取網頁的過程其實和讀者平時使用IE瀏覽器瀏覽網頁的道理是同樣的。好比說你在瀏覽器的地址欄中輸入 www.baidu.com 這個地址。打開網頁的過程其實就是瀏覽器做爲一個瀏覽的「客戶端」,向服務器端發送了一次請求,把服務器端的文件「抓」到本地,再進行解釋、展示。瀏覽器的功能是將獲取的HTML代碼進行解析,而後將原始的網頁轉化爲咱們看到的網站頁面。服務器

     網絡爬蟲最基本的思路就是:從一個頁面開始,分析其中的url,提取出來,而後經過這些連接尋求下一個頁面。如此往復。網絡

2. 通用爬蟲框架框架

首先,從互聯網上精心選擇一部分網頁,以這些網頁的連接地址最爲種子URL,將這些種子RUL存入待抓取的URL隊列(1),從待抓取的URL隊列開始讀取一個url(2)。其中的連接地址通過DNS解析(3)轉化爲網站服務器對應的IP地址。網頁下載器根據IP地址向服務器發送請求,得到網頁(5),下載好網頁後一方面做爲原始數據保存到頁面庫中,等待創建索引等後處理。另外一方面將該網頁的地址存到已經抓取的隊列(8)(避免重複爬取)。對於剛纔爬取的網頁進行解析(6),抽取其中的url(7),對於再也不已抓取URL隊列中的URL存於待抓取URL隊列(9)和。重複剛纔的故事。網站

3. URL搜索引擎

爬蟲最主要的處理對象是URL。簡單說url就是輸入的網址(例如:http://www.cnblogs.com/kaituorensheng/)。理解URL以前首先理解URI.url

Web上每種可用的資源,如 HTML文檔、圖像、視頻片斷、程序等都由一個通用資源標誌符(Universal Resource Identifier, URI)進行定位。
URI一般由三部分組成:spa

  1. 訪問資源的命名機制
  2. 存放資源的主機名
  3. 資源自身 的名稱,由路徑表示

如URI:http://www.why.com.cn/myhtml/html1223/設計

咱們能夠這樣解釋它:

  • 這是一個能夠經過HTTP協議訪問的資源
  • 位於主機 www.why.com.cn上
  • 經過路徑「/myhtml/html1223/」訪問

URL是URI的一個子集。它是Uniform Resource Locator的縮寫,譯爲「統一資源定位符」。
通俗地說,URL是Internet上描述信息資源的字符串,主要用在各類WWW客戶程序和服務器程序上。
採用URL能夠用一種統一的格式來描述各類信息資源,包括文件、服務器的地址和目錄等。
URL的格式由三部分組成:

  1. 第一部分是協議(或稱爲服務方式)
  2. 第二部分是存有該資源的主機IP地址(有時也包括端口號)
  3. 第三部分是主機資源的具體地址,如目錄和文件名等

第一部分和第二部分用「://」符號隔開
第二部分和第三部分用「/」符號隔開
第一部分和第二部分是不可缺乏的,第三部分有時能夠省略

3. 1 HTTP協議的URL示例
使用超級文本傳輸協議HTTP,提供超級文本信息服務的資源。
例:
其計算機域名爲www.peopledaily.com.cn。
超級文本文件(文件類型爲.html)是在目錄 /channel下的welcome.htm。

3.2 文件的URL用URL表示文件時,服務器方式用file表示,後面要有主機IP地址、文件的存取路徑(即目錄)和文件名等信息。有時能夠省略目錄和文件名,但「/」符號不能省略。 例:file://ftp.yoyodyne.com/pub/files/foobar.txt 上面這個URL表明存放在主機ftp.yoyodyne.com上的pub/files/目錄下的一個文件,文件名是foobar.txt。

相關文章
相關標籤/搜索