“豆瓣电影评级”插件开发始末

in mpaa •  6 years ago  (edited)

二月份在国内过了个年,捎带和同学去看了场非常精彩的电影《红海行动》。随着电影热度逐渐上升,在一片好评中,我注意到了一些不一样的声音,有些家长吐槽带自己家孩子也去看这部电影,导致孩子被一些少儿不宜的镜头吓到。电影中的残肢断臂、血肉横飞确实让大家了解了战争的残酷,从反战的角度来讲,这无疑是很成功的,但这些镜头会不可避免的给儿童留下些许阴影,从心理健康的角度来说是对儿童不利的。种种原因,电影分级制度在国内迟迟没有落地,而我们一直在追赶学习的美国从1968年就有了成熟的电影分级制度,在此我就不过多吐槽这个事了。所以我想如果有这样一款插件,在家长浏览一部电影的时候,能自动显示它在美国的评级,就会提醒家长考虑,自家的孩子是否适合看这样一部电影。虽然显示的是美国的评级,但我觉得多少也对我们有些借鉴作用,美国孩子成熟都早,他们都觉得一部电影不适合13岁以下的小孩了,何况我们,对吧?

从技术的角度来说,豆瓣是最容易的,因为豆瓣很贴心的在电影页面提供了该电影的 imdb 链接(如果有的话),这样我们就可以通过该链接去获取 imdb 网站上的评级。当然,更合适的网站应该是像猫眼电影这样的购票网站或者像优酷这样的视频网站,这个是后话了。imdb 提供了很多公开数据,可惜的是我没有找到评级信息,为了避免在插件中解析网页的麻烦,同时也为了避免万一 imdb 把插件封禁,我决定自己搭一个 API 服务器,数据库用的 PostgreSQL,其中存储电影的 imdb 编号和分级。后台写的很简单,用 flask 框架搭起 API 的简单结构,仅仅提供给一个 imdb 编号返回评级的功能,跑在 gunicorn 上,再配置 nginx 作为反向代理,整体主要还是运维的活,不擅此道,好在有篇现成的教程。至于说浏览器插件,那就更简单了,在网上随便找了个开源的改了改,再参考参考谷歌上的文档,使其能发送 http 请求,简单编辑一下 DOM,也就足够了。目前看来运行还算稳定,效果也还可以,在豆瓣的 imdb 链接下面自动加一行 mpaa 评级。

很惭愧,就做了点微小的工作,谢谢大家!

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Congratulations @oldpanda! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

Click here to view your Board

Support SteemitBoard's project! Vote for its witness and get one more award!

Congratulations @oldpanda! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!