当我们听说了一部电影的时候,习惯性地回去豆瓣查它的评分,然后再决定看不看。现在的一些豆瓣爬虫程序,都要爬取很多用不上的信息,而且能够指定影片搜索的也不常见。真正影响我们是否看某个影片的因素,主要只有评分和评论,但评论看多了,难免会被一些差评所影响,甚至剧透,错过一部好片子。所以最客观的因素,还得是豆瓣评分,今天我们就自己写一个非常简易的快速查分程序。
在这里,我们用的不是豆瓣的常用url,而是另辟蹊径,使用豆瓣api
下面是代码:
import requests
import json
import types
def Movie_main():
film = input('请输入您要查询的影片:')
url = 'http://api.douban.com//v2/movie/search?q=%s'%film
rs = requests.get(url)
rs_dict = json.loads(rs.text) #用于将str类型的数据转成dict
#在仔细研究过rs.text的内容后,我们只取出字典里需要用到的value,包括评分、类型和主演
result_dict = rs_dict['subjects'][0].values()
i=0
act=""
kind=""
for line in result_dict:
dict=line
if(i==0):
num=float(dict['average']) #评分
if(i==1):
kind=str(dict).strip('[').strip(']').replace('\'','') #类型
if(i==3):
act=dict[0]['name']+','+dict[1]['name']+','+dict[2]['name'] #主演
break
i+=1
#根据评分绘制星星
str1 = ''
for i in range(0, 5):
if int(num)/2>i:
str1+= '★'
else:
str1+='☆'
print('~~~~~~~~~~~~~~')
print('电影评分:'+str1+'%s'%num)
print("类型:%s"%kind)
print("主演:"+act)
print('~~~~~~~~~~~~~~')
Movie_main()
最后就用现在最火爆的影片测试一下:
怎么样,是不是跟网上那些电影网站爬虫的妖艳贱货不一样?