基于电影《少年的你》豆瓣影评数据的爬取与分析

目标网站:豆瓣电影

目标网址:https://movie.douban.com/subject/30166972/comments?status=P

目标数据:(1)评价 (2)日期 (3)评论 (4)评论点赞
在这里插入图片描述
任务要求:

(1)使用urllib或requests库实现该网站网页源代码的获取,并将源代码进行保存;

(2)自主选择re、bs4、lxml中的一种解析方法对保存的的源代码读取并进行解析,成功找到目标数据所在的特定标签,进行网页结构的解析;

(3)定义函数,将获取的目标数据保存到csv文件中。

(4)使用框架式结构,通过参数传递实现整个特定数据的爬取。

数据爬取

  • 链接端口分析,确定爬取页数
    在这里插入图片描述

  • 获取页面
    在这里插入图片描述

  • 分析页面,爬取信息
    在这里插入图片描述

  • 保存数据
    在这里插入图片描述
    在这里插入图片描述

  • 代码整合

import requests
from requests.exceptions import RequestException
from bs4 import BeautifulSoup
import bs4
import csv
import re
import time
import randomdef getHTMLText(url):headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36'}try:r = requests.get(url, headers=headers)r.raise_for_status()r.encoding = r.apparent_encodingreturn r.textexcept RequestException as e:print('error', e)def fillUnivList(all_info,url):soup = BeautifulSoup(url, 'html.parser')for i in range(20):commentlist = soup.find_all('span',class_ = 'short')votes = soup.find_all('span',class_ = "votes")time = soup.find_all('span',class_ = "comment-time")score = soup.find_all('span', class_ = re.compile('(.*) rating'))m = '\d{4}-\d{2}-\d{2}'try:match = re.compile(m).match(score[i]['title'])except IndexError:breakif match is not None:time = scorescore = ["null"]else:passall_dict = { }all_dict["commentlist"] = commentlist[i].textall_dict["votes"] =  votes[i].textall_dict["time"] = time[i].textall_dict["score"] = score[i]['title']all_info.append(all_dict)return all_infodef printHtml_text(data):for ii in data:value_list = list(ii.values())with open (r'D:\qq.txt','a',encoding ='utf-8') as f:f.write(str(value_list)+'\n')def printHtml_csv(data):with open('D:\data.csv','w',encoding = 'utf-8-sig',newline = '') as csvfile:fieldnames=['评价','日期','评论','评论点赞']writer=csv.DictWriter(csvfile,fieldnames=fieldnames)writer.writeheader()for a in data:i = list(a.values())writer.writerow({'评价':i[3],'日期':i[2],'评论':i[0],'评论点赞':i[1]})def main():all_info = []for i in range(0,200,20):urls = ['https://movie.douban.com/subject/30166972/comments?start='+str(i)+'&limit=20&sort=new_score&status=P']for url in urls:
#             print(i)time.sleep(round(random.uniform(3, 5), 2))html = getHTMLText(url)data = fillUnivList(all_info,html)printHtml_text(data)printHtml_csv(data)main()
  • 数据展示
    在这里插入图片描述
    在这里插入图片描述

数据分析

  • 制作词云
    在这里插入图片描述

  • 效果图
    在这里插入图片描述
    数据已经爬取出来了,可以使用Bar, Pie做一些效果图,自行发挥就好哈哈哈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/63559.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

爬取豆瓣电影前十页的好评一般差评

分析一波 爬取的地址:https://movie.douban.com/subject/26588308/comments 分别找出好评、一般、差评的评论: 通过地址栏分析,评论的类型和percent_type有关: 好评为h一般为m差评为l 但是我们想找的是在全部里面寻找好评一般和差…

豆瓣电影当中的电影详情数据

打开豆瓣电影,点击当中的排行榜,相应的类型选择为喜剧类型,当前的数据如果不使用数据解析来实现的话,会不会通过阿贾克斯请求来请求到json形式相应的电影数据呢? 当滚轮拖动到底部的时候,发现滚轮很快就变动…

针对豆瓣TOP前250电影做的简单的数据分析~

~~~~~~内容参考如下使用python抓取豆瓣top250电影数据进行分析 - 简书 https://www.jianshu.com/p/720b193a5c2b #导入库,三大常用数据分析库 import numpy as np import pandas as pd import matplotlib.pyplot as plt import matplotlib#读取保存本地的excel文件…

电影评分数据集的分析

目录 数据集的获得使用工具项目流程 数据集的获得 进入该网址:https://grouplens.org/datasets/movielens/ 找到如下part: 点击ml-100k.zip进行数据集的下载 在本地解压后,将会看到如下内容: 但我们目前只需要三个文件&#…

爬取豆瓣电影的评论

好久没有爬虫了,今天突然叫爬豆瓣,有点懵了,不过看了看以前爬的,一葫芦画瓢整了一个这个。bs4和requests yyds! 分析一波 爬取的地址:https://movie.douban.com/subject/26588308/comments 每次翻页可以看到…

2020 豆瓣电影榜单出炉,直接在豆瓣上看电影吧

公众号后台回复“图书“,了解更多号主新书内容 作者:苏生不惑 来源:苏生不惑 一晃又到了年底,2020年就要结束了(你的小目标完成了吗),一年一度的豆瓣电影榜单也出炉了https://movie.douban.com/…

豆瓣Top250电影数据分析报告

我的其他数据分析报告:求职指南——数据分析职位解析 【Python3】Requests+正则表达式+multiprocessing爬虫并存入MySQL数据库 一、分析背景及目的 豆瓣对Top250电影的定义: 豆瓣用户每天都在对“看过”的电影进行“很差”到“力荐”的评价,豆瓣根据每部影片看过的人数以及…

爬取豆瓣电影分类排行榜

确定目标网址:豆瓣电影排行榜 使用Google浏览器打开目标网址,右侧选择分类“传记”,按F12打开开发者工具,会打开如下界面:左侧是数据内容,右侧是网页源代码信息。注:由于该页面是动态的&#x…

豆瓣top250电影数据分析

分析背景及目的 豆瓣电影 Top 250定义:豆瓣用户每天都在对“看过”的电影进行“很差”到“力荐”的评价,豆瓣根据每部影片看过的人数以及该影片所得的评价等综合数据,通过算法分析产生豆瓣电影 Top 250。 本文对于"好评电影"(豆瓣电影top250)的影片评分,上映…

Python对豆瓣电影Top250并进行数据分析

由于CSDN审核机制,导致原文章无法发出,故修改了相关词汇,并改为两篇问章发布。 数据获取 翻页操作 观察可知,我们只需要修改start参数即可 headers字段 headers中有很多字段,这些字段都有可能会被对方服务器拿过来进…

你知道豆瓣电影是怎么评分的吗?

「关注我,和我一起放下灵魂,让灵魂去搬砖。」 作者:小一 介绍:放不下灵魂的搬砖者 全文共6673字,阅读全文需17分钟 Python版本3.8.0,开发工具:Pycharm 写在前面的话: 如果你是因为看…

豆瓣电影TOP250数据分析

本文使用的语言为Python, 用到的几个模块有:BeautifulSoup(爬数据),pandas(数据处理),seaborn(可视化),部分图表由Tableau生成。 1. 数据获取 计划要抓取的…

豆瓣高分电影信息分析(数据分析)

豆瓣高分电影信息分析(数据分析) 1、数据抓取 数据集的获取是我们进行数据分析的第一步。现在获取数据的主要途径一般为:现成数据;自己写爬虫去爬取数据;使用现有的爬虫工具爬取所需内容,保存到数据库&am…

豆瓣电影评分分析(数据分析)

本文主要通过对豆瓣电影爬取的数据进行的简要分析,观察得出各部分之间对应的关系影响。 一.数据抓取 我们要想进行数据分析,首先就要通过爬虫对分析对象网页的数据爬取保存,可以保存到数据库或者文件形式到本地,这里我是保存在表…

人类禁止进入的“微博”,我的AI机器人在那里吹牛,“勾搭”AI小姑娘

最近球友推荐了一个非常有趣的网站,叫“奇鸟”(https://chirper.ai/zh)。 简单来说,这是一个AI专属的微博,人类禁止发言,但是你可以创建一个叫“奇鸟”的机器人代理,让它在里边发帖,…

OpenAI 的嵌入 API太慢了吗?探索其他嵌入模型和服务的优势

这篇文章讨论了机器学习模型的延迟对聊天应用和代理的用户体验的影响,重点关注了生成语言模型(LLM)的提示生成过程中的语义搜索任务。文章比较了两种嵌入API 服务(OpenAI 和 Google)和几种开源嵌入模型(sen…

chatgpt赋能python:Python怎么Import自己写的SEO文章

Python怎么Import自己写的SEO文章 如果你是一位Python开发人员,并且正在为SEO优化而努力编写文章,那么你可能会想知道如何将自己编写的SEO文章导入您的程序中以便更好的利用。 在这篇文章中,我们将介绍如何使用Python中的import语句将自己编…

什么是全景地图?

如果问什么是全景图,那应该很多人都能回答上来。那么要是问什么是全景地图,估计很多人就不清楚了。然而我们在想要知道全景地图是怎么做的时候,就必须要知道什么是全景地图,那么这篇文章就告诉大家什么是全景地图。 全景地图也经…

全景图为何如此受欢迎/

为何全方位全景和720度全景这般受欢迎?今日我来给各位朋友科谱答疑解惑:说白了3d全景,便是运用全景和虚拟现实技术技术性,在互联网技术完成可720度无死角收看的呈现方式。从现阶段的实例来讲,3d全景除开在游戏娱乐行业得到巨大的…