美文网首页
【用 Python 爬了猫眼3000+《指环王》影评,看看20年

【用 Python 爬了猫眼3000+《指环王》影评,看看20年

作者: 程序员小西 | 来源:发表于2022-03-26 11:02 被阅读0次

    指环王三部曲,可以说是魔幻电影的开山鼻祖,二十年前的特效下,森林、大山、魔王、高塔,城堡等等都栩栩如生的呈现在我们眼前。虽然这次重映,票房不高,也因为电影时长等原因被各种诟病,但是还是不影响魔戒迷们冲进电影院,来弥补二十年的遗憾!

    本文获取了猫眼上三部曲的全部影评,一起来看看大陆影迷对于这系列“老”片的评价吧

    数据获取

    我们先来看看爬取数据的部分代码,由于猫眼采取了一定的反爬措施,一个比较重的措施就是对于请求中 header 的 UA 数值的校验,所以我们这里使用了 Python 第三方库中比较好用的生成随机 UA 的库 fake_useragent

    from fake_useragent import UserAgentua = UserAgent()
    

    接下来我们就可以根据评论的接口来获取数据了

    def fire(num):
        page = 0
        for i in range(15, 135, 15):
            print("开始爬取第 %s 页" % page)
            headers["User-Agent"] = ua.random
            url1 = 'http://m.maoyan.com/review/v2/comments.json?movieId=1220&offset={}&limit=15&type=2'.format(
            i)  # rings 1
            url2 = 'http://m.maoyan.com/review/v2/comments.json?movieId=1221&offset={}&limit=15&type=2'.format(
            i)  # rings 2
            url3 = 'http://m.maoyan.com/review/v2/comments.json?movieId=428&offset={}&limit=15&type=2'.format(
            i)  # rings 3
            try:
                if num == 1:
                    print(url1)
                    res = requests.get(url1, headers=headers).json()
                elif num == 2:
                    print(url2)
                    res = requests.get(url2, headers=headers).json()
                else:
                    print(url3)
                    res = requests.get(url3, headers=headers).json()
                except Exception as e:
                    print(e)
                    time.sleep(120)
                    # continue
                    # if not to_json['paging']['hasMore']:
                    if not res['paging']['hasMore']:
                        print("爬取完成")
                        # driver.close()
                        break
                        data = get_json(res)
                        # data = get_json(to_json)
                        save_to_csv(data, num)
                        time.sleep(20)
                        page += 1
    
    

    这里还是进行了比较长的 sleep,毕竟如果请求发送的太快,我们的 IP 还是很容易被识别的

    获取到数据之后,我们就来看看每一部电影的相关数据吧

    护戒使者

    对于第一部,在魔幻电影界来说绝对是横空出世的感觉,我们抓取到的数据如下

    图片

    性别分布

    先来看看评论者的性别分布吧,一般来说,这列电影,肯定男孩子比较多啦

    图片

    可以看到,在填写了性别信息的数据当中,男生占比还是比较大的,不过还是有大部分人选择了不公开性别

    用户级别分布

    图片

    还是很正常啊,大部分都是 level-0 的用户,毕竟万万千千的普通人才是社会主体

    评分分布

    对于电影的喜爱程度,评分才是最为直接的选择

    图片

    可以看到,有60%多的用户给出了10分,有接近80%的用户给出了9或10分,看了护戒使者还是很受观众喜爱的!

    用户评论

    再来看看用户的评论

    图片

    这就是大型的夸夸现场,毕竟经典永远不会过期!

    对于另外两部电影,我们直接来看下用户评论吧

    双塔奇兵&王者归来评论

    图片 图片

    从用户的评论来看,指环王三部曲还是非常给力的,经典永流传!

    不少影迷还表示,拖欠的电影票终于补上啦

    好了,今天的分享就到这里,给个“关注和喜欢”再走吧

    相关文章

      网友评论

          本文标题:【用 Python 爬了猫眼3000+《指环王》影评,看看20年

          本文链接:https://www.haomeiwen.com/subject/hnojjrtx.html