欢迎访问宙启技术站
智能推送

用Python开发的IMDb电影情感分析工具

发布时间:2023-12-11 09:02:40

IMDb(Internet Movie Database)是全球最大的电影资料库之一,包含了大量关于电影的信息,包括电影的名称、导演、演员、评分以及用户的评论和评价等。

电影情感分析是一种通过计算机技术和自然语言处理方法来确定文本情感倾向的技术,可以帮助我们了解电影观众对电影的情感态度,对电影行业的市场研究、观众观影决策等方面都具有重要的意义。

下面是一个使用Python开发的IMDb电影情感分析工具的示例代码:

import requests
import json

def get_movie_reviews(movie_title):
    # 构建请求的URL
    url = "http://www.omdbapi.com/?apikey=YOUR_API_KEY&t=" + movie_title
    
    # 发送GET请求获取电影信息
    response = requests.get(url)
    movie_data = json.loads(response.text)
    
    # 判断请求是否成功
    if movie_data["Response"] == "True":
        # 获取电影ID
        movie_id = movie_data["imdbID"]
        
        # 构建请求的URL
        url = "http://www.omdbapi.com/?apikey=YOUR_API_KEY&i=" + movie_id + "&plot=full"
        
        # 发送GET请求获取电影评论
        response = requests.get(url)
        reviews_data = json.loads(response.text)
        
        # 返回电影评论列表
        return reviews_data["Plot"]
    else:
        return None

def analyze_sentiment(movie_reviews):
    # 构建请求的URL
    url = "https://api.deepai.org/api/sentiment-analysis"
    
    # 构建POST请求的参数
    payload = {
        "text": movie_reviews
    }
    
    # 发送POST请求进行情感分析
    response = requests.post(url, data=payload)
    sentiment_data = json.loads(response.text)
    
    # 返回情感分析结果
    return sentiment_data["output"]

# 输入电影名称
movie_title = input("请输入电影名称:")

# 获取电影评论
movie_reviews = get_movie_reviews(movie_title)

if movie_reviews:
    # 进行情感分析
    sentiment = analyze_sentiment(movie_reviews)
    
    # 输出情感分析结果
    print("电影《" + movie_title + "》的情感倾向是:" + sentiment)
else:
    print("未找到该电影的信息")

使用说明:

1. 首先,你需要在OMDb API网站注册并获取API密钥。将密钥替换成代码中的YOUR_API_KEY。

2. 运行程序后,输入你想要分析的电影名称。

3. 程序将使用OMDb API获取该电影的详细信息,然后提取电影评论。

4. 接下来,程序将使用DeepAI API进行情感分析,并返回情感倾向结果。

这个示例中使用了OMDb API来获取电影信息和评论,并使用DeepAI API进行情感分析。你可以根据自己的需求选择适合的API或者算法来实现电影情感分析功能。这个工具可以让你了解观众对电影的情感倾向,帮助你做市场研究或者了解观众对电影的评价。