七夕看什么电影好?爬取电影评分并存入csv文件

需求分析

众所周知,今天已经是七夕节了。能过上节日的想必已经在出去玩以及在出去玩的路上了。下午的时候呢,我也收到了一则攻略“七夕节情侣看恐怖电影如何拉近两人之间的距离”,可惜啊,虽然攻略不错,不过看起来我是用不上了

出去玩相比也少不了看电影的环节吧?那么,看什么电影比较好呢?想必很多情侣,平日里可能并不关注电影的消息,等到了要找一个电影看的时候,就不知道应该看什么会比较好了。可能,听说最近那个叫做《独行月球》的比较火,已经突破了好多好多亿的票房了,应该去看这个电影吗?

如果问我的话,我其实也不知道。但是呢,如果要知道看什么电影比较好,一个好的方法就是,查看电影的评分,这样不就一目了然了吗?虽然评分高的电影不代表就一定好看,但是至少,说明大多数人都喜欢看对不对。说干就干,今天我们就爬取一下电影的评分

 实现分析

爬虫程序都是这样,如果有反爬的话,就会比较难。没有反爬的话就会比较简单。提取数据方面,如果结构复杂,所需的内容杂乱,就会难以提取,如果是结构化的数据,比如说是ajax请求,直接能够拿到json数据的话,就会非常容易

恰好,今天电影评分既没有反爬,也是json格式的数据,所以一下子就可以轻松提取到了,非常的容易啊。当然,这也不是我们的功劳,主要还是对方网站比较大方

至于csv的读写,也是非常容易的,有很多种方式都可以实现。比如说,自己通过文件读写,按照csv的格式来读写文件。比如说通过能够操作csv的第三方库进行csv的读写。当然啦,还有一种比较简单的方式就是直接使用python中内置的csv模块。虽然功能比不上第三方库的功能强大,但是也是不错的选择

当然,也许还有的小伙伴可能不了解csv格式。其实,csv就和excel是类似的,也是能够做成excel的这种格式的,但是相对比较简单,如果你不知道这个话,可以另外去了解一下

import csv # 导入内置的csv模块

# 通过上下文管理器,正常的打开一个文件
with open("douban.csv", "w", newline="") as csvfile:
    # 通过csv.writer(),创建一个writer用于后续写入csv文件
    w = csv.writer(csvfile, delimiter=",")
    # 通过writerow()的方法,写入csv的行
    w.writerow(["标题", "评分", "地址", "图片"])
    for row in r.json()["subjects"]:
        w.writerow([row["title"], row["rate"], row["url"], row["cover"]])

另外,可能有的小伙伴也会很困惑。如果要读取解析json文件的话,不是应该import json模块吗?为什么在下边的代码中完全没有使用到这一点呢?

事实上,在requests中,已经包含了json模块,而且有更简单的使用方式,因此直接通过requests使用json就可以了。不需要再额外的引入json的内置模块了

完整代码实现

import requests
import csv
from base64 import b64decode

headers = {"user-agent": "Mozilla/5.0"}
url = b64decode("aHR0cHM6Ly9tb3ZpZS5kb3ViYW4uY29tL2ovc2VhcmNoX3N1YmplY3RzP3R5cGU9bW92aWUmdGFnPeeDremXqCZzb3J0PXJlY29tbWVuZCZwYWdlX2xpbWl0PTIwJnBhZ2Vfc3RhcnQ9MA==").decode()

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

with open("douban.csv", "w", newline="") as csvfile:
    w = csv.writer(csvfile, delimiter=",")
    w.writerow(["标题", "评分", "地址", "图片"])
    for row in r.json()["subjects"]:
        w.writerow([row["title"], row["rate"], row["url"], row["cover"]])

程序运行结束以后,可以看到已经成功保存为了csv文件,效果如下


所以说,最后祝大家七夕节节日快乐,如果你能过节的话,可以根据评分赶紧去看电影啦。如果你没节可以过的话。嗯,好吧,你也可以自己去看看电影,要不,你不出门的话,别人不就都知道你没节可过了吗!

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
七夕情人节超级好看表白HTML5源码是一种用HTML5语言编写的源码,用于制作一个精美的表白动画或页面。通过使用这个源码,可以呈现出华丽的动画效果和浪漫的视觉效果,帮助用户更好地表达对另一半的爱意。 这个源码可以根据用户的需求进行个性化调整,包括背景音乐选择、背景图片切换、文字内容和样式等方面,以使表白过程更加贴合用户的情感和需求。通过添加一些浪漫的特效,比如心形效果、花瓣飘落等,使整个表白过程更加生动、浪漫。 这个源码的优势在于它采用了HTML5技术,可以跨平台运行,支持在各种设备上流畅显示,包括电脑、手机、平板等。同时,HTML5源码也可以兼容各种浏览器,无论用户使用什么浏览器进行浏览,都能够正常显示源码效果。 通过这个源码,用户可以自由发挥创意,根据自己的想法进行修改和调整,可以增加自己的个性化元素,以使表白更加独特和有创意。不仅如此,这个源码还可以作为一个礼物,通过将源码制作成一个独立的网页或动画,可以将之分享给对方,作为一份特别的礼物和浪漫的回忆。 总之,七夕情人节超级好看表白HTML5源码是一种能够帮助用户制作出精美、浪漫的表白动画或页面的源码。通过使用这个源码,用户可以自由发挥创意,打造出独特的表白方式,表达自己深深的爱意和祝福。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值