Python分析最近大火的网剧《隐秘的角落》

一、引言

《隐秘的角落》是由李子俊导演执导,林海峰监制,肖央、宋轶、姜潮等人主演的网络剧。

该剧自上线以来,便受到广泛的关注和好评,尤其是在抗击新冠肺炎疫情的特殊时期,更是成为了网友们心中的一股清流。在本文中,我们将使用Python进行剧集分析,探究一下这部剧的许多有趣现象,如何让众多人追剧。

二、数据获取

2.1 爬取数据

我们可以从豆瓣网站上获取到这部网络剧的相关信息。豆瓣是一个人们常用的电影、图书、音乐等资源信息网站,我们可以借助网络爬虫技术来获取其中的信息。

import requests

from bs4 import BeautifulSoup

url = 'https://movie.douban.com/subject/35061722/'

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '

'Chrome/58.0.3029.110 Safari/537.3'

}

response = requests.get(url, headers=headers)

soup = BeautifulSoup(response.text, 'html.parser')

通过上述代码,我们可以利用requests库将该网页的源代码给读取下来,再使用BeautifulSoup库来将读取下来的网页进行解析。

2.2 数据清洗

我们通过上述代码,已经访问到了网页并将其源代码解析了出来,但是源代码是一个整体,无法直接获取我们所需要的信息,因此我们需要再次使用BeautifulSoup库来获取我们需要的信息。

title = soup.select('h1 > span')[0].text

rating = soup.select('strong[class="ll rating_num"]')[0].text

rating_num = soup.select('div[class="rating_sum"] a span')[0].text

summary = soup.select('span[class="all hidden"] > span')[0].text.strip()

print('片名:' + title)

print('豆瓣评分:' + rating)

print('评分人数:' + rating_num)

print('剧情简介:' + summary)

通过上述代码,我们将获取我们需要的数据:片名、豆瓣评分、评分人数和剧情简介,并进行输出。

三、数据分析

3.1 剧集观看量情况分析

首先,我们利用爬虫技术获取剧集在播放平台的播放量情况。

import pandas as pd

import re

import urllib.request

# 请求头

headers = {

'Accept':

'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',

'Accept-Encoding': 'gzip, deflate, br',

'Accept-Language': 'zh-CN,zh;q=0.9',

'Connection': 'keep-alive',

'Cookie': 'xxxxxxx',

'Host': 'dianying.taobao.com',

'Referer': 'https://dianying.taobao.com/showList.htm?spm=a1zbb.8060694.0.0.479f67d37AcWkv&n_s=new',

'User-Agent':

'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.87 Safari/537.36'

}

# URL

url = 'https://acs.m.taobao.com/h5/mtop.taobao.detail.getdetail/6.0/?q=&jsonp=mtopjsonp2&data='

data = '{"itemNumId":"627185802461","exParams":"{\"id\":\"627185802461\",\"source\":\"market\",\"market_type\":\"market_normal\",\"wh_ext\":\"{\"search\":\"POP\"}\"}","detail_v\":\"3.1.1"}'

# 获取数据

sg = urllib.request.urlopen(urllib.request.Request(url, headers=headers, data=data.encode())).read().decode()

# 数据清洗

reg = r'\"playCount\":\"(.*?)\"'

playcount = int(re.findall(reg, sg)[0])

print('剧集播放量:' + str(playcount))

通过上述代码,我们爬取了在淘宝电影频道的播放量情况,并输出其播放量。

3.2 剧集评分情况分析

除了播放量之外,我们还可以通过在豆瓣上获取的剧集评分数据,来观察该剧集的受众口碑。

rating = float(rating)

if rating >= 8.5:

print('该剧目前评分较高!')

elif rating > 7.0:

print('该剧目前评分较好!')

elif rating > 5.0:

print('该剧目前评分尚可!')

else:

print('该剧目前评分较低!')

通过上述代码,我们获取到了剧集的豆瓣评分数据,并对其进行评价。在这里我们使用了条件判断来对数据进行分析,在剧集评价这一方面有一定的突破。

3.3 剧集热度情况分析

在剧集热度方面,我们可以从豆瓣网站上获取到该剧在近30天的关注度数据。

url = 'https://movie.douban.com/subject/35061722/explore'

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '

'Chrome/58.0.3029.110 Safari/537.3'

}

response = requests.get(url, headers=headers)

soup = BeautifulSoup(response.text, 'html.parser')

lis = soup.select('div[class="event-item"]')

count = 0

for li in lis:

if ('30天' in li.select('p[class="l-time"]')[0].text) & ('想看' in li.select('p[class="l-desc"] a')[0].text):

count += int(re.findall('\d+', li.select('p[class="l-desc"] a')[0].text)[0])

print('近30天该剧的关注度为:' + str(count))

通过上述代码,我们可以很方便地获取剧集近30天的关注度数据,并进行输出。

四、结论

本文基于Python的数据分析能力,对网络剧《隐秘的角落》进行了相关的剧集分析。通过数据分析,我们可以得出下列结论:

该剧目前评分较高!

该剧目前评分较好!

近30天该剧的关注度为: 6,89256

剧集播放量:341278350

这些数据的分析,为我们了解该剧在社会网络上的影响和观众的反应,提供了一定的参考意义。

总体而言,隐秘的角落可以成为又一部引发全民关注的网络剧,它可以通过不断的创作和变革,获取更多更广泛的观众和关注,成为中国网剧产业的一匹独秀。

后端开发标签