摘要:項(xiàng)目簡介本實(shí)驗(yàn)通過使用實(shí)現(xiàn)一個(gè)淘寶女郎圖片收集爬蟲,學(xué)習(xí)并實(shí)踐及正則表達(dá)式等知識。本教程由阿發(fā)布在實(shí)驗(yàn)樓,完整教程及在線練習(xí)地址實(shí)現(xiàn)淘女郎照片爬蟲,可以直接在教程中下載代碼使用。
項(xiàng)目簡介:本實(shí)驗(yàn)通過使用 Python 實(shí)現(xiàn)一個(gè)淘寶女郎圖片收集爬蟲,學(xué)習(xí)并實(shí)踐 BeautifulSoup、Selenium Webdriver 及正則表達(dá)式等知識。
本教程由阿treee發(fā)布在實(shí)驗(yàn)樓,完整教程及在線練習(xí)地址:Python3 實(shí)現(xiàn)淘女郎照片爬蟲,可以直接在教程中下載代碼使用demo。
一、實(shí)驗(yàn)說明 1.1 實(shí)驗(yàn)介紹本項(xiàng)目通過使用 Python 實(shí)現(xiàn)一個(gè)淘女郎圖片收集爬蟲,學(xué)習(xí)并實(shí)踐 BeautifulSoup、Selenium Webdriver 及正則表達(dá)式等知識。在項(xiàng)目開發(fā)過程中采用瀑布流開發(fā)模型。
1.2 知識點(diǎn)本項(xiàng)目中將會學(xué)習(xí)并實(shí)踐以下知識點(diǎn):
Python3 編程
使用 BeautifulSoup 解析 HTML 頁面
使用 Selenium Webdriver 爬取 Web 頁面
使用正則表達(dá)式提取所需的關(guān)鍵信息
1.3 實(shí)驗(yàn)效果首先我們要爬取的目標(biāo)頁面如下:
爬取后的目錄結(jié)構(gòu)如下:
每個(gè)目錄中都有一系列的圖片:
二、基礎(chǔ)工具本節(jié)主要介紹和安裝項(xiàng)目中將用到的幾個(gè)基礎(chǔ)工具。本實(shí)驗(yàn)使用實(shí)驗(yàn)樓的環(huán)境開發(fā),中間部分步驟在不同版本的 Linux 環(huán)境下會有不同。
2.1 安裝 pip3首先,由于使用的工具都需要通過 pip3 進(jìn)行安裝,實(shí)驗(yàn)樓的環(huán)境中沒有安裝 pip3,所以需要先將pip3準(zhǔn)備好。
打開桌面上的 Xfce 終端,輸入下面的命令安裝 pip3:
sudo apt-get update sudo apt-get install python3-pip2.2 安裝 BeatifulSoup 簡介
BeautifulSoup 庫的名字取自劉易斯·卡羅爾在《愛麗絲夢游仙境》里的同名歌詞。就像故事中他在仙境中的說法一樣,BeautifulSoup 試圖化平淡為神奇。它通過定位 HTML 標(biāo)簽來去格式化和組織復(fù)雜的網(wǎng)絡(luò)信息,用簡單易用的 Python 對象為我們展現(xiàn) XML 結(jié)構(gòu)信息。
安裝由于這次實(shí)驗(yàn)是在 python3.X 版本以上的所以,將拓展庫安裝到特定的庫中使用 pip3,從而安裝到 python3 的系統(tǒng)目錄中,仍然是在實(shí)驗(yàn)樓中的 Xfce 終端執(zhí)行命令:
sudo pip3 install Beautifulsoup4
BeautifulSoup4 是現(xiàn)今的最新版本,也是接下來重點(diǎn)使用的工具。
2.3 Selenium 簡介Selenium 是一個(gè)強(qiáng)大的網(wǎng)絡(luò)數(shù)據(jù)采集工具,最初是為網(wǎng)站自動化測試而開發(fā)的。近幾年,他還被廣泛用于獲取精確的網(wǎng)站快照,因?yàn)樗麄兛梢灾苯舆\(yùn)行在瀏覽器上。Selenium 可以讓瀏覽器自動加載頁面,獲取需要的數(shù)據(jù),甚至頁面截屏,或者判斷網(wǎng)站上某些動作上是否發(fā)生。
Selenium 自己不帶瀏覽器,它需要與第三方瀏覽器結(jié)合在一起使用。例如,可以在實(shí)驗(yàn)樓桌面上的 Firefox 瀏覽器上運(yùn)行 Selenium,可以直接看到一個(gè) FireFox 窗口被打開,進(jìn)入網(wǎng)站,然后執(zhí)行你在代碼中設(shè)置的動作。雖然使用 Firefox 瀏覽器看起來更清楚,但在本實(shí)驗(yàn)中我們采用 PhantomJS來代替真實(shí)的瀏覽器結(jié)合使用。
安裝可以通過 PyPI網(wǎng)站 下載Selenium庫,也可以通過第三方管理器(像 pip3 )用命令行下載安裝:
sudo pip3 install selenium
測試是否都安裝成功:
2.4 PhantomJS 簡介一個(gè) 無頭 的瀏覽器,PhantomJS 會把網(wǎng)站加載到內(nèi)存并執(zhí)行頁面上的 JavaScript,但是不會向用戶展示網(wǎng)頁的圖形化界面,可以用來處理 cookie、JavaScript 及 header 信息,以及任何你需要瀏覽器協(xié)助完成的事情。
安裝PhantomJS 也可以從他的 官方網(wǎng)站下載。因?yàn)?PhantomJS 是一個(gè)功能完善的瀏覽器,并非一個(gè) Python 庫,所以他不需要像 Python 的其他庫一樣安裝,也不能用 pip 安裝。
實(shí)驗(yàn)樓的環(huán)境是 Ubuntu,可以通過 apt-get 進(jìn)行安裝:
sudo apt-get install phantomjs2.5 Ajax 信息加載
現(xiàn)在有很多頁面都是采用 Ajax 加載數(shù)據(jù),我們即將實(shí)驗(yàn)的目標(biāo)網(wǎng)址也是這樣的,如果我們用傳統(tǒng)的方法采集樣的頁面,只能獲取加載前的頁面,而我們真正需要的信息( Ajax 執(zhí)行之后的頁面)卻抓不到,后續(xù)實(shí)驗(yàn)中可以看到效果的區(qū)別。
三、項(xiàng)目實(shí)現(xiàn)本項(xiàng)目的詳細(xì)教程、完整代碼及demo測試,可在實(shí)驗(yàn)樓中查看并在線完成。
更多Python經(jīng)典項(xiàng)目:Python全部-課程
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/38114.html
摘要:在這之前,還是有必要對一些概念超輕量級反爬蟲方案后端掘金前言爬蟲和反爬蟲日益成為每家公司的標(biāo)配系統(tǒng)。 爬蟲修煉之道——從網(wǎng)頁中提取結(jié)構(gòu)化數(shù)據(jù)并保存(以爬取糗百文本板塊所有糗事為例) - 后端 - 掘金歡迎大家關(guān)注我的專題:爬蟲修煉之道 上篇 爬蟲修煉之道——編寫一個(gè)爬取多頁面的網(wǎng)絡(luò)爬蟲主要講解了如何使用python編寫一個(gè)可以下載多頁面的爬蟲,如何將相對URL轉(zhuǎn)為絕對URL,如何限速,...
Python裝飾器為什么難理解? 無論項(xiàng)目中還是面試都離不開裝飾器話題,裝飾器的強(qiáng)大在于它能夠在不修改原有業(yè)務(wù)邏輯的情況下對代碼進(jìn)行擴(kuò)展,權(quán)限校驗(yàn)、用戶認(rèn)證、日志記錄、性能測試、事務(wù)處理、緩存等都是裝飾器的絕佳應(yīng)用場景,它能夠最大程度地對代碼進(jìn)行復(fù)用。 但為什么初學(xué)者對裝飾器的理解如此困難,我認(rèn)為本質(zhì)上是對Py… Python 實(shí)現(xiàn)車牌定位及分割 作者用 Python 實(shí)現(xiàn)車牌定位及分割的實(shí)踐。 ...
摘要:抓取淘寶女郎準(zhǔn)備工作首先在淘寶女郎的首頁這里查看,當(dāng)然想要爬取更多的話,當(dāng)然這里要查看翻頁的不過這操蛋的地方就是這里的翻頁是使用加載的,這個(gè)就有點(diǎn)尷尬了,找了好久沒有找到,這里如果有朋友知道怎樣翻頁的話,麻煩告訴我一聲,謝謝了,不過就這樣坐 scrapy抓取淘寶女郎 準(zhǔn)備工作 首先在淘寶女郎的首頁這里查看,當(dāng)然想要爬取更多的話,當(dāng)然這里要查看翻頁的url,不過這操蛋的地方就是這里的...
摘要:主要特性前一陣重新組織了一下代碼加了命令行信息用起來更方便了一些初步實(shí)現(xiàn)了豆瓣小組及用戶相關(guān)的爬蟲和請求基于和沒有用高階的諸如之類的爬蟲工具所有的命令行輸出都是標(biāo)準(zhǔn)的格式可以使用操作安裝僅支持使用兩種命令模式客戶端接口調(diào)用和豆瓣模塊接口 主要特性 前一陣重新組織了一下代碼, 加了命令行help信息, 用起來更方便了一些 初步實(shí)現(xiàn)了豆瓣小組及用戶相關(guān)的API爬蟲和請求 基于reques...
摘要:時(shí)間永遠(yuǎn)都過得那么快,一晃從年注冊,到現(xiàn)在已經(jīng)過去了年那些被我藏在收藏夾吃灰的文章,已經(jīng)太多了,是時(shí)候把他們整理一下了。那是因?yàn)槭詹貖A太亂,橡皮擦給設(shè)置私密了,不收拾不好看呀。 ...
閱讀 3232·2021-10-08 10:04
閱讀 1190·2021-09-30 09:48
閱讀 3564·2021-09-22 10:53
閱讀 1775·2021-09-10 11:22
閱讀 1784·2021-09-06 15:00
閱讀 2254·2019-08-30 15:56
閱讀 773·2019-08-30 15:53
閱讀 2366·2019-08-30 13:04