python爬虫实战测评_Python 爬虫实战入门(上)
之前為了工作需要,寫了不少爬蟲小程序,和同事們聊得過程中發(fā)現(xiàn),很多人對(duì)爬蟲還是停留在聽說過的階段,基于這個(gè)原因,特意寫點(diǎn)適合小白看的,希望大家能對(duì)爬蟲有個(gè)小認(rèn)知。
工欲善其事必先利其器,既然要寫爬蟲,那第一步,就是環(huán)境準(zhǔn)備,先來看看我們需要的基礎(chǔ)環(huán)境。
操作系統(tǒng):Windows 10
Python版本:Python 3.6
代碼編輯運(yùn)行環(huán)境:個(gè)人推薦PyCharm社區(qū)版。
依賴第三方庫:
requests:一個(gè)方便、簡(jiǎn)潔、高效且人性化的HTTP請(qǐng)求庫
BeautifulSoup:HTML解析庫
安裝的話,本身步驟并不是很復(fù)雜,我們來看看。
1.安裝Python運(yùn)行環(huán)境
從python官網(wǎng)可以進(jìn)行下載
https://www.python.org/downloads/release/python-365/
安裝的時(shí)候注意選中把python3.6添加到path,然后點(diǎn)擊Customize installation
確認(rèn)pip是選中的
2.安裝pycharm
可以從官網(wǎng)下載pycharm社區(qū)版,安裝教程可以百度
https://www.jetbrains.com/pycharm/download/#section=windows
3.安裝第三方依賴庫
這里給大家介紹兩種安裝方式:
第一種是選用pip安裝:在cmd中運(yùn)行pip install requests 或者 pip install bs4
另外一種我們可以借助pycharm安裝,在pycharm中選擇File->settings->Project Interpreter中,點(diǎn)擊右邊的+,然后輸入我們需要安裝的第三方庫
這樣我們基本爬蟲需要的環(huán)境就配置好了,那接下來,就開始我們愉快的爬蟲之旅吧。
那開始實(shí)戰(zhàn)之前,我們先來分析一下我們的爬蟲需要完成一個(gè)什么樣的流程。
人工抓取頁面數(shù)據(jù)做法
1:打開我們需要分析的網(wǎng)頁,我們以豆瓣電影top 250 為例:
https://movie.douban.com/top250
2:確認(rèn)我們需要保存的數(shù)據(jù),我們?cè)谶@將影片名字,評(píng)分和一句話評(píng)價(jià)保存下來,那就是將每條里面的數(shù)據(jù)copy并復(fù)制下來
3: 因?yàn)楫?dāng)前頁面只能展示25條,那我們需要對(duì)后續(xù)的網(wǎng)頁進(jìn)行順序讀取,確認(rèn)我們將250條都讀取出來。
那根據(jù)對(duì)人工動(dòng)作的分析,我們可以對(duì)我們的程序進(jìn)行以下分析
1. 我們需要有一個(gè)可以爬取頁面請(qǐng)求的動(dòng)作
2. 我們需要對(duì)爬取下來的頁面進(jìn)行分析
3. 我們需要對(duì)頁面請(qǐng)求進(jìn)行一個(gè)循環(huán),將250條數(shù)據(jù)都爬取下來
那基于這些需求,我們首先需要做的就是對(duì)頁面請(qǐng)求進(jìn)行爬取,那在這里,給大家介紹一個(gè)頁面請(qǐng)求的庫,就是requests。
這里是它的基本文檔介紹:
https://requests.readthedocs.io/zh_CN/latest/
看它的介紹:Requests 唯一的一個(gè)非轉(zhuǎn)基因的 Python HTTP 庫,人類可以安全享用。就知道這是一個(gè)非常簡(jiǎn)單好用的網(wǎng)絡(luò)庫了。
我們先來看一下怎么爬取第一個(gè)網(wǎng)頁 (test1.py)
運(yùn)行一下看看效果
根據(jù)打印出來的內(nèi)容,我們可以看到,第一個(gè)網(wǎng)頁已經(jīng)被我們爬取下來了,那接下來,我們就需要分析一下后續(xù)網(wǎng)頁有什么規(guī)律可以讓我們使用
第一頁: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=
我們可以看出來,從第二頁開始,每一個(gè)連接后面都需要一個(gè)start的參數(shù),而且是以25遞增的,那我們可以對(duì)我們的程序進(jìn)行以25遞增的獲取頁面(test2.py):
到這里,我們已經(jīng)可以將網(wǎng)頁都爬取下來了,那下一步要做的就是對(duì)我們需要的內(nèi)容進(jìn)行提取了,我們下一次來實(shí)現(xiàn)內(nèi)容提取。
本文所有代碼都可以在github上下載,鏈接地址為:
https://github.com/chrisblue0605/testspider_for_py.git
作 者:Testfan Chris
出 處:微信公眾號(hào):自動(dòng)化軟件測(cè)試平臺(tái)
版權(quán)說明:歡迎轉(zhuǎn)載,但必須注明出處,并在文章頁面明顯位置給出文章鏈接
總結(jié)
以上是生活随笔為你收集整理的python爬虫实战测评_Python 爬虫实战入门(上)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue导入非es6 js文件_Vue项目
- 下一篇: python把列表写入excel_用Py