python爬蟲(一)

來源:互聯網
上載者:User

從我接觸python爬蟲開始,斷斷續續的學習到現在將將入門,已經過去了一個多月了,發現爬蟲真的是一項浩瀚的工程,涉及的知識面非常廣。我在這裡主要是分享一下自己學的東西,同時做個總結。有寫錯或理解有誤的地方歡迎各位大神指正。

什麼是爬蟲
用通俗易懂的語言來說就是個人寫一個程式來類比瀏覽器,發送網路請求,擷取響應,然後我們把拿到的資料進行處理的一種行為。
http://www.google.com/googlebooks/chrome/big_00.html這個是Google一名工程師用漫畫的形式寫的瀏覽器原理(請自備梯子)。

爬蟲的應用
你可以爬去想要的圖片,爬取自己想看的視頻等等你想要爬取的資料,只要你能通過瀏覽器訪問的資料都可以通過爬蟲擷取,這裡要有一個信念:只要是網路上有的就一定能爬,沒有爬不到的內容只有想不到的內容。爬蟲往小的做,可以爬一些簡單的檔案,如爬豆瓣電影,往大的做,諸如百度搜尋,Google搜尋。

爬蟲到底是什麼
就像瀏覽器一樣,我們通過瀏覽器開啟網頁,擷取網頁中我們想要的那部分資料。

瀏覽器開啟網頁的過程:
當你在瀏覽器中輸入地址後,經過DNS伺服器(網域名稱系統伺服器,用於解析請求網站的IP地址)找到伺服器主機,向伺服器發送一個請求,伺服器返回一個響應給瀏覽器結果,包括html,js,css等檔案內容,瀏覽器解析出來最後呈現給使用者在瀏覽器上看到的結果,即網站頁面。頁面由html(超文字標記語言 (HTML))構成,爬蟲就是為了擷取這些內容,通過一定的方式分析和過濾html代碼,從中擷取我們想要資源(文本,圖片,視頻.....)

瀏覽器的請求

咱們先說說url,中文名統一資源定位器,用來定位網路上各種資源的位置和獲得這些資源的方法。

url的組成:

url = 請求協議 + 網域名稱 + 資源路徑 + 參數

請求協議:是指用什麼樣的方法來獲得這些資源,最常用的即http協議和https協議,其次為ftp協議。

網域名稱:伺服器位址。

資源路徑:在伺服器的哪個位置,就和你在硬碟上儲存一個檔案,在c盤360檔案夾的那哪個位置。可有可無。

參數:如果檔案是分段儲存,指的是可能的檔案片段儲存位置。或為用戶端傳入伺服器的一些參數,可有可無。

在瀏覽器頁面,右擊滑鼠選擇檢查,出現一個視窗。

下部為開啟的調試工具,element就是頁面的元素,可以看作是頁面的html,我們就是從這裡提取一些資料的,比如可以用xpath-helper來查看這些資料,在python中也有xpath方法。

Network是表示當前網路傳輸的一些內容,可以即時看到瀏覽器與伺服器的互動內容。上面這個圖開啟的就是瀏覽器發送請求並獲得響應的一個展示,Headers包括了要求標頭,回應標頭,傳輸檔案等,是http或https協議的一部分。

response其實就是瀏覽器獲得的響應,基本上與elements相同。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.