1. 程式人生 > 實用技巧 >爬取豆瓣

爬取豆瓣

1:先檢視豆瓣的官網

2:按f12進行解析,分析

3::實現對豆瓣top250的影片資訊爬取

4:建立Mongodb連線,用於資料儲存

5:抓取top250電影的上映時間、國家、評分、型別、評價人數

def get_movie_list(url,headers):

    # 例項化soup物件, 便於處理

    soup = requests.get(url,headers=headers) #向網站發起請求,並獲取響應物件

    response = BeautifulSoup(soup.text,'lxml')#利用xml html解析器,具有容錯功能

    lists 
= response.select('div.info') #迴圈獲取資訊 for list in lists: #獲取連結, 也就是獲取a連結中href對應的值; sing_url =list.select('a')[0].get('href') #獲取影片名稱 name =list.select('div.hd .title')[0].text #導演及主演 type_list = list.select('div.bd p')[0].text.strip('').split('
...')[-1].replace(' ','').split('/') #上映時間 year =type_list[0] #國家 country = type_list[1] #影片所屬類別 category = type_list[2] #獲取影片評分 star = list.select('div.bd .star .rating_num')[0].text.replace(' ','') #獲取引述 quote =list.select
('div.bd .quote')[0].text #獲取評論人數 people_num = list.select('div.bd .star span:nth-of-type(4)')[0].text.split('')[0] get_detail_movie(sing_url,name,year,country,category,star,quote,people_num,headers)

6:抓取top250電影的執導導演、參演演員,並儲存資料到mongodb中

7:我們將獲取到影片資訊資料儲存到資料庫中,以便後面對資料的分析,效果如下:

8:Top250影片華語電影型別數量

9:對爬取到的資訊進行分類整理,統計作品數前10的導演,以及資料視覺化

10:統計作品數前10導演

11:繪製柱狀圖

12:2000年上映影片型別比重

1)統計和提取2000年上映影片數量型別與華語上映電影型別相同,

2)繪製環形圖

13:作品與評分折線圖