使用pycharm根据豆瓣网对《流浪地球》的影评内容,使用情感词典对文本进行情感分析(所使用评论内容不可重复,如出现重复内容则都为0分)。 1.1 程序源代码
时间: 2025-01-19 12:14:33 浏览: 45
好的,我可以为您提供一个使用Python和PyCharm进行情感分析的示例程序。这个程序将使用情感词典来分析豆瓣网上《流浪地球》的影评内容。以下是完整的源代码:
```python
import jieba
from collections import defaultdict
# 情感词典
positive_words = set(['喜欢', '好看', '精彩', '感人', '震撼'])
negative_words = set(['讨厌', '难看', '无聊', '失望', '垃圾'])
# 停用词表
stop_words = set(['的', '了', '和', '是', '在'])
def load_comments(filename):
with open(filename, 'r', encoding='utf-8') as file:
comments = [line.strip() for line in file]
return comments
def analyze_sentiment(comment):
words = jieba.lcut(comment)
positive_score = 0
negative_score = 0
for word in words:
if word in positive_words:
positive_score += 1
elif word in negative_words:
negative_score += 1
return positive_score, negative_score
def remove_duplicates(comments):
seen = set()
unique_comments = []
for comment in comments:
if comment not in seen:
seen.add(comment)
unique_comments.append(comment)
else:
unique_comments.append('0')
return unique_comments
def main():
filename = 'comments.txt'
comments = load_comments(filename)
unique_comments = remove_duplicates(comments)
results = []
for comment in unique_comments:
if comment == '0':
results.append((0, 0))
else:
sentiment = analyze_sentiment(comment)
results.append(sentiment)
for i, (positive, negative) in enumerate(results):
print(f"评论{i+1}: 正面得分={positive}, 负面得分={negative}")
if __name__ == "__main__":
main()
```
这个程序的工作原理如下:
1. 我们定义了正面和负面情感词典,以及一个停用词列表。
2. `load_comments` 函数用于从文件中加载评论。
3. `analyze_sentiment` 函数使用情感词典对单条评论进行情感分析。
4. `remove_duplicates` 函数用于移除重复的评论,并将其替换为 '0'。
5. 在 `main` 函数中,我们加载评论,去除重复,然后对每条评论进行情感分析。
6. 最后,我们打印出每条评论的正面和负面得分。
使用这个程序时,你需要准备一个名为 'comments.txt' 的文件,里面包含从豆瓣网上爬取的《流浪地球》影评,每条评论占一行。
请注意,这个程序只是一个简单的示例,实际应用中可能需要更复杂的情感分析和去重方法。此外,使用爬虫获取数据时,请确保遵守相关网站的使用条款。
阅读全文
相关推荐
















