Python爬蟲原理

來源:互聯網
上載者:User

標籤:mys   mysql   下載   服務   技術分享   節點   pyquery   解析json資料   --   

前言

簡單來說互連網是由一個個網站和網路裝置群組成的大網,我們通過瀏覽器訪問網站,網站把HTML、JS、CSS代碼返回給瀏覽器,這些代碼經過瀏覽器解析、渲染,把豐富多彩的網頁呈現在我們眼前;

 

一、爬蟲是什嗎?

如果我們把互連網比作一張大的蜘蛛網,資料便是存放於蜘蛛網的各個節點,而爬蟲就是一隻小蜘蛛,

沿著網路抓取自己的獵物(資料)爬蟲指的是:向網站發起請求,擷取資源後分析並提取有用資料的程式;

從技術層面來說就是 通過程式類比瀏覽器請求網站的行為,把網站返回的HTML代碼/JSON資料/位元據(圖片、視頻) 爬到本地,進而提取自己需要的資料,存放起來使用;

 

 

 

二、爬蟲的基本流程:

使用者擷取網路資料的方式:

方式1:瀏覽器提交請求--->下載網頁代碼--->解析成頁面

方式2:類比瀏覽器發送請求(擷取網頁代碼)->提取有用的資料->存放於資料庫或檔案中

爬蟲要做的就是方式2;

 

1、發起請求

使用http庫向目標網站發起請求,即發送一個Request

Request包含:要求標頭、請求體等 

Request模組缺陷:不能執行JS 和CSS 代碼

 

2、擷取響應內容

如果伺服器能正常響應,則會得到一個Response

Response包含:html,json,圖片,視頻等

 

3、解析內容

解析html資料:Regex,第三方解析庫如Beautifulsoup,pyquery等

解析json資料:json模組

解析位元據:以wb的方式寫入檔案

 

4、儲存資料

資料庫(MySQL,Mongdb、Redis)

檔案

 

Python爬蟲原理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.