Python3 實現淘女郎照片爬蟲

圖片描述

項目簡介:本實驗經過使用 Python 實現一個淘寶女郎圖片收集爬蟲,學習並實踐 BeautifulSoup、Selenium Webdriver 及正則表達式等知識。html

本教程由阿treee發佈在實驗樓,完整教程及在線練習地址:Python3 實現淘女郎照片爬蟲,能夠直接在教程中下載代碼使用demo。python

1、實驗說明

1.1 實驗介紹

本項目經過使用 Python 實現一個淘女郎圖片收集爬蟲,學習並實踐 BeautifulSoup、Selenium Webdriver 及正則表達式等知識。在項目開發過程當中採用瀑布流開發模型。正則表達式

1.2 知識點

本項目中將會學習並實踐如下知識點:編程

  1. Python3 編程瀏覽器

  2. 使用 BeautifulSoup 解析 HTML 頁面cookie

  3. 使用 Selenium Webdriver 爬取 Web 頁面網絡

  4. 使用正則表達式提取所需的關鍵信息工具

1.3 實驗效果

首先咱們要爬取的目標頁面以下:學習

目標頁面

爬取後的目錄結構以下:測試

此處輸入圖片的描述

每一個目錄中都有一系列的圖片:

此處輸入圖片的描述

2、基礎工具

本節主要介紹和安裝項目中將用到的幾個基礎工具。本實驗使用實驗樓的環境開發,中間部分步驟在不一樣版本的 Linux 環境下會有不一樣。

2.1 安裝 pip3

首先,因爲使用的工具都須要經過 pip3 進行安裝,實驗樓的環境中沒有安裝 pip3,因此須要先將pip3準備好。

打開桌面上的 Xfce 終端,輸入下面的命令安裝 pip3:

sudo apt-get update
sudo apt-get install python3-pip

2.2 安裝 BeatifulSoup

簡介

BeautifulSoup 庫的名字取自劉易斯·卡羅爾在《愛麗絲夢遊仙境》裏的同名歌詞。就像故事中他在仙境中的說法同樣,BeautifulSoup 試圖化平淡爲神奇。它經過定位 HTML 標籤來去格式化和組織複雜的網絡信息,用簡單易用的 Python 對象爲咱們展示 XML 結構信息。

安裝

因爲此次實驗是在 python3.X 版本以上的因此,將拓展庫安裝到特定的庫中使用 pip3,從而安裝到 python3 的系統目錄中,仍然是在實驗樓中的 Xfce 終端執行命令:

sudo pip3 install Beautifulsoup4

BeautifulSoup4 是現今的最新版本,也是接下來重點使用的工具。

2.3 Selenium

簡介

Selenium 是一個強大的網絡數據採集工具,最初是爲網站自動化測試而開發的。近幾年,他還被普遍用於獲取精確的網站快照,由於他們能夠直接運行在瀏覽器上。Selenium 可讓瀏覽器自動加載頁面,獲取須要的數據,甚至頁面截屏,或者判斷網站上某些動做上是否發生。

Selenium 本身不帶瀏覽器,它須要與第三方瀏覽器結合在一塊兒使用。例如,能夠在實驗樓桌面上的 Firefox 瀏覽器上運行 Selenium,能夠直接看到一個 FireFox 窗口被打開,進入網站,而後執行你在代碼中設置的動做。雖然使用 Firefox 瀏覽器看起來更清楚,但在本實驗中咱們採用 PhantomJS來代替真實的瀏覽器結合使用。

安裝

能夠經過 PyPI網站 下載Selenium庫,也能夠經過第三方管理器(像 pip3 )用命令行下載安裝:

sudo pip3 install selenium

測試是否都安裝成功:

此處輸入圖片的描述

2.4 PhantomJS

簡介

一個 無頭 的瀏覽器,PhantomJS 會把網站加載到內存並執行頁面上的 JavaScript,可是不會向用戶展現網頁的圖形化界面,能夠用來處理 cookieJavaScriptheader 信息,以及任何你須要瀏覽器協助完成的事情。

安裝

PhantomJS 也能夠從他的 官方網站下載。由於 PhantomJS 是一個功能完善的瀏覽器,並不是一個 Python 庫,因此他不須要像 Python 的其餘庫同樣安裝,也不能用 pip 安裝。

實驗樓的環境是 Ubuntu,能夠經過 apt-get 進行安裝:

sudo apt-get install phantomjs

此處輸入圖片的描述

2.5 Ajax 信息加載

如今有不少頁面都是採用 Ajax 加載數據,咱們即將實驗的目標網址也是這樣的,若是咱們用傳統的方法採集樣的頁面,只能獲取加載前的頁面,而咱們真正須要的信息( Ajax 執行以後的頁面)卻抓不到,後續實驗中能夠看到效果的區別。

3、項目實現

本項目的詳細教程、完整代碼及demo測試,可在實驗樓中查看並在線完成。
更多Python經典項目:Python所有-課程

相關文章
相關標籤/搜索