爬取豆瓣

1:先查看豆瓣的官网

爬取豆瓣_第1张图片

 

 2:按f12进行解析,分析

爬取豆瓣_第2张图片

 

 3::实现对豆瓣top250的影片信息爬取

 

 4: 建立Mongodb连接,用于数据保存

 

爬取豆瓣_第3张图片

 

 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中

爬取豆瓣_第4张图片

 

 7:我们将获取到影片信息数据保存到数据库中,以便后面对数据的分析,效果如下:

爬取豆瓣_第5张图片

 

 8:Top250影片华语电影类型数量

爬取豆瓣_第6张图片

 

 爬取豆瓣_第7张图片

 

 爬取豆瓣_第8张图片

 

 9:对爬取到的信息进行分类整理,统计作品数前10的导演,以及数据可视化

爬取豆瓣_第9张图片

 

 10:统计作品数前10导演

爬取豆瓣_第10张图片

 

 11:绘制柱状图

爬取豆瓣_第11张图片

 

 爬取豆瓣_第12张图片

 

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

1)统计和提取2000年上映影片数量类型与华语上映电影类型相同,

2)绘制环形图

爬取豆瓣_第13张图片

 

 爬取豆瓣_第14张图片

 

13:作品与评分折线图

爬取豆瓣_第15张图片

 

 爬取豆瓣_第16张图片

 

你可能感兴趣的:(爬取豆瓣)