當前位置:
首頁 > 最新 > 零基礎小白也可以快速入門學會的Python爬蟲項目,60分鐘搞定

零基礎小白也可以快速入門學會的Python爬蟲項目,60分鐘搞定

隨著網路技術的發展,數據越來越變的值錢,諸多公司都在探究如何獲取更多更有用的數據。萬維網是大量信息的載體,如何有效提取這些有效且公開的數據並利用這些信息變成了一個巨大的挑戰。

從而爬蟲工程師、數據分析師、大數據工程師的崗位也越來越受歡迎。爬蟲則是 Python 的一個應用領域,Python 還有諸多應用領域,如 Web 全棧開發、圖形界面開發、大數據、人工智慧、系統網路運維、雲計算系統管理……

Python 基礎知識學習途徑

學習好 Python 基礎對於學習 Python 爬蟲具有事半功倍的效果。就像生活中的學英語一樣,一個對英語一概不通的人聽完別人讀英語,自己也能讀出來,但是要把英語讀好,好好學習音標是非常有必要的。

然而 Python 的基礎知識如果要系統學習,內容也較多,那麼我們到底需要學習到什麼程度,對於學習 Python 爬蟲才是足夠的呢?這裡,我對學習爬蟲需要掌握的 Python 基礎知識進行了篩選,過濾掉了一些不必要的知識。為您提供了如下學習鏈接:

Python 開發環境的搭建

Python 目前流行版本兩個 Python 2.x 與 Python 3.x,由於 Python 2 只會維護到2020年,因此這裡建議使用 python 3 來作為我們的編程環境。

1.下載Python。

下載 Python3.6.2 版本即可。

提示:根據你的電腦選擇,32位還是64位的安裝包。

安裝過程中只需要默認安裝即可。安裝完成後在 cmd 命令行輸入 python,然後回車,如果成功進入 python 並返回 python 的版本信息,則證明 Python 環境安裝成功(這裡我將 Python.exe 改為了 Python3.exe)。這裡還是要推薦下小編的Python學習裙:【五 八 八,零 九 零,九 四 二】不管你是小白還是大牛,小編我都歡迎,不定期分享乾貨,包括小編自己整理的一份2018最新的Python資料和0基礎入門教程,歡迎初學和進階中的小夥伴。在不忙的時間我會給大家解惑如下圖所示。

什麼是爬蟲?

網路爬蟲(又被稱為網頁蜘蛛,網路機器人,在 FOAF 社區中間,更常被稱為網頁追逐者),是一種按照一定的規則,自動地抓取萬維網信息的程序或者腳本,從中獲取大量的信息。

爬蟲的作用主要有以下幾點:

市場分析:電商分析、商圈分析、一二級市場分析等;

市場監控:電商、新聞、房源監控、票房預測、股票分析等;

商機發現:招投標情報發現、客戶資料發掘、企業客戶發現等;

數據分析:對某個 App 的下載量跟蹤、用戶分析、評論分析,虛擬貨幣詳情分析……

爬蟲基礎知識補充

在開始學習爬蟲知識之前,你需要了解一些網頁的基本知識:

網址的構成

網頁的基本構成

常見的載入模式

網頁的請求過程

谷歌瀏覽器之 HTTP 請求分析

1.網址的構成

網站的網址一般由協議+域名+加頁面構成,如 https://auction.jd.com/home.html,域名一般是固定的不會改變,能改變的則是頁面(home.html),所以在爬蟲的過程中我們所需要解析的就是自己編寫的不同頁面的URL,只有解析出各個不同頁面的 URL 入口,我們才能開始爬蟲(爬取網頁)。

2.網頁的基本構成

一般來說一個網頁的頁面主要有 HTML、CSS、JavaScript 構成,這裡我們可以打開任意一個網頁右擊查看網頁源代碼。

HTML:是用來製作網頁,簡單來說就是編寫網頁結構。

CSS:美化網頁(樣式);

JavaScript: 實現網頁與客戶之間互動的橋樑,讓網頁具有豐富的生命力。

3.常見的載入模式

學習爬蟲有必要了解網頁常見的兩種載入模式(後續爬蟲過程中,經常需要用到)。

同步載入:改變網址上的某些參數會導致網頁發生改變。如常見的網站翻頁後網址會發生變化。

非同步載入:改變網址上的參數不會使網頁發生改變。如常見的網站翻頁後網址不會發生變化。

4.網頁的請求過程

打開瀏覽器,地址欄輸 baidu.com,按下回車,到用戶看到內容,主要經歷了如下步驟:

(1)開始進行域名解析。

首先瀏覽器自身搜 DNS 緩存,搜 baidu.com 有沒有緩存有沒有過期,如果過期就結束,其次瀏覽器會搜索操作系統自身的 DNS 緩存並讀取本地的 host 文件,瀏覽器發起一個 DNS 系統調用。

(2)瀏覽器獲得 baidu.com 域名對應的 IP 地址後,發起 HTTP 三次握手。

(3)建立 TCP/IP,瀏覽器就可以向伺服器發送 HTTP 請求。

TCP/IP 鏈接建立起來後,瀏覽器就可以向伺服器發送 HTTP 請求。伺服器接收到請求之後就會對請求做相應的處理,並將結果返回給瀏覽器。

(4)瀏覽器拿到資源之後對頁面進行載入、解析、渲染,最後呈現給用戶。

5.谷歌瀏覽器之 HTTP 請求分析

打開 Chrome 開發工具(這裡我們以打開百度網址為例),如下圖:

Elements(元素麵板):使用「元素」面板可以通過自由操縱 DOM 和 CSS 來重演您網站的布局和設計。

Console(控制檯面板):在開發期間,可以使用控制檯面板記錄診斷信息,或者使用它作為 shell,在頁面上與 JavaScript 交互。

Sources(源代碼面板):在源代碼面板中設置斷點來調試 JavaScript ,或者通過 Workspaces(工作區)連接本地文件來使用開發者工具的實時編輯器。

Network(網路面板):從發起網頁頁面請求 Request 後得到的各個請求資源信息(包括狀態、資源類型、大小、所用時間等),並可以根據這個進行網路性能優化。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Python 的精彩文章:

Python 常用相關庫介紹

TAG:Python |