专栏名称: 编程派
Python程序员都在看的公众号,跟着编程派一起学习Python,看最新国外教程和资源!
目录
相关文章推荐
Python爱好者社区  ·  72K,确实可以封神了!! ·  5 天前  
Python爱好者社区  ·  “我,在阿里月薪6万,离职后突然惊醒:人越努 ... ·  4 天前  
Python爱好者社区  ·  某副教授相亲 100 ... ·  3 天前  
Python爱好者社区  ·  实习四十天被抓了,不回去就开除。。。 ·  6 天前  
Python开发者  ·  Ilya向全世界宣布:预训练结束了!全球AI ... ·  3 天前  
51好读  ›  专栏  ›  编程派

一个爬豆瓣电影信息的轮子

编程派  · 公众号  · Python  · 2017-03-03 11:55

正文

原文:http://blog.chriscabin.com/coding-life/python/python-in-real-world/1537.html 

作者:克里斯 


全文约 2009 字,读完可能需要 3 分钟。

引言

做了一个用于获取指定电影名称的豆瓣电影详情的 Python 包。它可以自动搜索到指定的电影,并下载其电影详情,嗯,还有高清海报哦! 项目地址:

影片信息获取模块

说明

1。 该模块根据给定的影片名称,返回来自豆瓣的影片详情; 

2。 返回结果均为字典格式;

3。 豆瓣详情获取时,会自动下载影片对应的高清剧照,并存储在返回的字典中(存储在 海报数据 字段); 

4。 豆瓣电影详情获取时,单 IP 访问频率不能太高,访问间隔尽量控制在 2 秒以上,否则 IP 可能会被屏蔽。

安装、卸载

  1. python3 setup.py install/uninstall

快速测试

  1. >>> import movie_info

  2. >>> name = "阿凡达"

  3. >>> d = movie_info.DoubanMovieInfo(name)

  4. >>> print(d)

  5. >>> d.movie_info

使用

获取豆瓣电影详情

1。 说明:

  1. 传入的参数除了有电影名称外,还可以额外传递年份信息,以便获取更加准确的匹配结果;

  2. 豆瓣电影详情在获取时会自动下载电影相关的海报,并存储到结果字典的 海报数据 字段。

2。 获取电影功夫瑜伽的详情:

  1. import os

  2. from movie_info import DoubanMovieInfo

  3. info = DoubanMovieInfo('功夫瑜伽', 2017).movie_info

  4. for k, v in info.items():

  5.    print(k, v)

保存海报数据

  1. poster_name = os.path.join('posters', '{}_{}'.format(name, info['海报链接'].split('/')[-1]))

  2. with open(poster_name, 'wb') as f:

  3.    f.write(info['海报数据'])

  4. print('海报保存路径:{}'.format(poster_name))

3。 输出:

  1. {

  2.    "制片国家/地区": "中国大陆, 印度",

  3.    "片长": "108分钟",

  4.    "海报链接": "http://img2.jintiankansha.me/get4?src=http://img3.doubanio.com/view/photo/raw/public/p2412371389.jpg",

  5.    "海报数据": "xxxxxxxxxx",

  6.    "IMDB编码": "tt4217392",

  7.    "电影名称": "功夫瑜伽",

  8.    "类型": "喜剧, 动作, 冒险",

  9.    "语言": "汉语普通话, 英语, 印地语, 阿拉伯语",

  10.    "主演": "成龙, 李治廷, 张艺兴, 索努*苏德, 母其弥雅, 迪莎*帕塔尼, 艾米拉*达斯特, 尚语贤, 姜雯, 张国立, 伊利亚娜*狄克鲁兹",

  11.    "编剧": "唐季礼",

  12.    "上映日期": "2017-01-28(中国大陆)",

  13.    "导演": "唐季礼",

  14.    "又名": "Kung Fu Yoga",

  15.    "来源": "豆瓣电影",

  16.    "剧情介绍": "考古学教授Jack(成龙 饰)多年没有踏出学校,校长和学生都对他添油加醋的历史半信半疑。一次授课后,一个印度女孩找到Jack,用一张千年地图吸引了Jack的目光。于是Jack和挚友的儿子李琼斯(李治廷 饰)、助教小光(张艺兴 饰)组成"寻宝小分队",为"神秘宝石"展开冒险,在迪拜和土豪飙车,在冰岛潜入神秘冰穴,在印度大战土狼,和印度贵族斗舞,动作喜剧再升级,打笑全世界。",

  17.    "电影链接": "https://movie.douban.com/subject/26182910/"

  18. }


题图:pexels,CC0 授权。

点击阅读原文,查看更多 Python 教程和资源。