第十一講:爬取貓眼網站上的前100名電影

本次咱們來經過翻頁爬取的方式爬取貓眼電影裏面推薦的前100名電影,並存儲到數據庫。正則表達式

一、咱們登陸貓眼,看下咱們的數據在哪裏數據庫

而後點擊今日TOP100,看下具體的網頁數據函數

最下面咱們看到底部有頁碼,並分析頁碼與地址欄的關係。字體

咱們能夠總結出如下規律:spa

後續咱們經過不斷變化地址欄就能夠實現翻頁搜索信息的效果。3d

 

而,咱們要獲取的影片內容有哪些?下面這些:排名、影片名稱、主演、上映時間、評分。調試

對於咱們要獲取的信息,咱們要查看源碼,看下對應的信息的通用格式是怎樣的。blog

按F12鍵,在調試模式裏面點擊小箭頭,選中對應的頁面元素就能夠看到元素的源代碼了。源碼

一、排名:it

元素格式:<i class="board-index board-index-1">1</i>

上面格式中的紅色字體是能夠改變的,好比第二名就是:<i class="board-index board-index-2">2</i>

咱們能夠用\d{1,3} 代替1-100的數字,那麼對應的正則表達式能夠寫成:

p=r'<i class="board-index board-index-\d{1,3}">\d{1,3}'

因此,咱們獲取排名的代碼以下:

最後在修改一下,把數字提取出來,用split()函數:

二、電影名稱:

有兩條,咱們只取一條就能夠了。

元素格式:<a href="/films/1203" title="霸王別姬" class="image-link" 

根據上面,咱們能夠寫正則表達式爲:p2=r'<a href="/films/\d{1,}" title="\S{1,}" class="image-link" 

代碼以下:

最後,咱們要修改下,只過濾電影名稱,採用split()函數

三、主演與上映時間:

四、最後是評分

最後,咱們要作的是:

一、分值合併。

二、以上各個值的組裝。

三、寫入數據庫。

四、翻頁

先寫到這裏,同窗們思考上面兩個,答案下面一講再公佈。

注:其實咱們的正則表達式更加精準的話,就不用截取那麼屢次。後續再重點講正則表達式這塊知識。

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息