Python 爬蟲實戰入門(上)

Python 爬蟲實戰入門(上)


之前為了工作需要,寫了不少爬蟲小程序,和同事們聊得過程中發現,很多人對爬蟲還是停留在聽說過的階段,基於這個原因,特意寫點適合小白看的,希望大家能對爬蟲有個小認知。


工欲善其事必先利其器,既然要寫爬蟲,那第一步,就是環境準備,先來看看我們需要的基礎環境。

操作系統:Windows 10

Python版本:Python 3.6

代碼編輯運行環境:個人推薦PyCharm社區版。

依賴第三方庫:

requests:一個方便、簡潔、高效且人性化的HTTP請求庫

BeautifulSoup:HTML解析庫

安裝的話,本身步驟並不是很複雜,我們來看看。


1.安裝Python運行環境


Python 爬蟲實戰入門(上)


從python官網可以進行下載

https://www.python.org/downloads/release/python-365/

安裝的時候注意選中把python3.6添加到path,然後點擊Customize installation


Python 爬蟲實戰入門(上)


確認pip是選中的


Python 爬蟲實戰入門(上)


Python 爬蟲實戰入門(上)


2.安裝pycharm


Python 爬蟲實戰入門(上)


可以從官網下載pycharm社區版,安裝教程可以百度

https://www.jetbrains.com/pycharm/download/#section=windows


3.安裝第三方依賴庫


Python 爬蟲實戰入門(上)


這裡給大家介紹兩種安裝方式:


第一種是選用pip安裝:在cmd中運行pip install requests 或者 pip install bs4


Python 爬蟲實戰入門(上)


另外一種我們可以藉助pycharm安裝,在pycharm中選擇File->settings->Project Interpreter中,點擊右邊的+,然後輸入我們需要安裝的第三方庫


Python 爬蟲實戰入門(上)


這樣我們基本爬蟲需要的環境就配置好了,那接下來,就開始我們愉快的爬蟲之旅吧。


那開始實戰之前,我們先來分析一下我們的爬蟲需要完成一個什麼樣的流程


人工抓取頁面數據做法


1:打開我們需要分析的網頁,我們以豆瓣電影top 250 為例:

https://movie.douban.com/top250


Python 爬蟲實戰入門(上)


2:確認我們需要保存的數據,我們在這將影片名字,評分和一句話評價保存下來,那就是將每條裡面的數據copy並複製下來


Python 爬蟲實戰入門(上)


3: 因為當前頁面只能展示25條,那我們需要對後續的網頁進行順序讀取,確認我們將250條都讀取出來。

那根據對人工動作的分析,我們可以對我們的程序進行以下分析

1. 我們需要有一個可以爬取頁面請求的動作

2. 我們需要對爬取下來的頁面進行分析

3. 我們需要對頁面請求進行一個循環,將250條數據都爬取下來

那基於這些需求,我們首先需要做的就是對頁面請求進行爬取,那在這裡,給大家介紹一個頁面請求的庫,就是requests。

這裡是它的基本文檔介紹:

https://requests.readthedocs.io/zh_CN/latest/


看它的介紹:Requests 唯一的一個非轉基因的 Python HTTP 庫,人類可以安全享用。

就知道這是一個非常簡單好用的網絡庫了。

我們先來看一下怎麼爬取第一個網頁 (test1.py)


Python 爬蟲實戰入門(上)


運行一下看看效果


Python 爬蟲實戰入門(上)


根據打印出來的內容,我們可以看到,第一個網頁已經被我們爬取下來了,那接下來,我們就需要分析一下後續網頁有什麼規律可以讓我們使用


第一頁:https://movie.douban.com/top250

第二頁:https://movie.douban.com/top250?start=25&filter=

第三頁:https://movie.douban.com/top250?start=50&filter=

第四頁:https://movie.douban.com/top250?start=75&filter=


我們可以看出來,從第二頁開始,每一個連接後面都需要一個start的參數,而且是以25遞增的,那我們可以對我們的程序進行以25遞增的獲取頁面(test2.py):


Python 爬蟲實戰入門(上)


到這裡,我們已經可以將網頁都爬取下來了,那下一步要做的就是對我們需要的內容進行提取了,我們下一次來實現內容提取。

本文所有代碼都可以在github上下載,鏈接地址為:

https://github.com/chrisblue0605/testspider_for_py.git

作 者:Testfan Chris

出  處:微信公眾號:自動化軟件測試平臺


分享到:


相關文章: