在数字化时代,获取各类信息变得越来越便捷。豆瓣作为中国最大的在线生活平台和城市消费指南,提供了丰富的电影、书籍、音乐等文化娱乐信息。掌握豆瓣API调用技巧,可以让我们轻松获取这些海量信息。本文将为你揭秘豆瓣API的使用方法,让你成为信息获取的达人。
一、了解豆瓣API
豆瓣API是豆瓣网提供的一套应用程序接口,允许开发者通过HTTP请求获取豆瓣上的各种数据。目前,豆瓣API涵盖了电影、书籍、音乐、小组等多个领域,功能十分丰富。
二、获取API Key
在使用豆瓣API之前,你需要先注册成为豆瓣开发者,并获取自己的API Key。登录豆瓣开发者平台(https://developer.douban.com/),按照提示完成注册和认证,即可获得API Key。
三、调用电影API
以下是一个获取电影信息的示例:
import requests
def get_movie_info(api_key, movie_id):
url = f"https://api.douban.com/v2/movie/subject/{movie_id}"
params = {
"apikey": api_key
}
response = requests.get(url, params=params)
return response.json()
# 使用示例
api_key = "你的API Key"
movie_id = "26752088" # 电影《肖申克的救赎》的ID
movie_info = get_movie_info(api_key, movie_id)
print(movie_info)
调用结果示例:
{
"title": "肖申克的救赎",
"original_title": "The Shawshank Redemption",
"rating": {
"max": 10,
"average": 9.6,
"stars": "50",
"min": 0,
"num_raters": 269721
},
"douban_site": "https://movie.douban.com/subject/26752088/",
"year": "1994",
"directors": [
{
"alt": "https://movie.douban.com/celebrity/1047924/",
"avatars": {
"small": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"large": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"medium": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg"
},
"name": "弗兰克·德拉邦特",
"id": "1047924"
}
],
"casts": [
{
"alt": "https://movie.douban.com/celebrity/1047924/",
"avatars": {
"small": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"large": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"medium": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg"
},
"name": "蒂姆·罗宾斯",
"id": "1047924"
},
{
"alt": "https://movie.douban.com/celebrity/1047924/",
"avatars": {
"small": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"large": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"medium": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg"
},
"name": "摩根·弗里曼",
"id": "1047924"
}
],
"genres": [
"剧情",
"犯罪",
"励志"
],
"collect_count": 927698,
"subtype": "movie",
"languages": [
"英语"
],
"countries": [
"美国"
],
"summary": "希望是个好东西,也许是这个世界上最好的东西,而好东西永远不会消逝。",
"images": {
"small": "https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2515568159.jpg",
"large": "https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2515568159.jpg",
"medium": "https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2515568159.jpg"
},
"alt": "https://movie.douban.com/subject/26752088/",
"casts": [
{
"alt": "https://movie.douban.com/celebrity/1047924/",
"avatars": {
"small": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"large": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"medium": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg"
},
"name": "蒂姆·罗宾斯",
"id": "1047924"
},
{
"alt": "https://movie.douban.com/celebrity/1047924/",
"avatars": {
"small": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"large": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg",
"medium": "https://img3.doubanio.com/view/celebrity/s_ratio_celebrity/public/p195.jpg"
},
"name": "摩根·弗里曼",
"id": "1047924"
}
],
"media": "movie"
}
四、调用书籍API
以下是一个获取书籍信息的示例:
import requests
def get_book_info(api_key, book_id):
url = f"https://api.douban.com/v2/book/{book_id}"
params = {
"apikey": api_key
}
response = requests.get(url, params=params)
return response.json()
# 使用示例
api_key = "你的API Key"
book_id = "9787020048818" # 书籍《解忧杂货店》的ISBN
book_info = get_book_info(api_key, book_id)
print(book_info)
调用结果示例:
{
"title": "解忧杂货店",
"author": "东野圭吾",
"publisher": "南海出版公司",
"isbn10": "9787020048818",
"isbn13": "9787544259355",
"price": "32.00元",
"pages": "240",
"rating": {
"max": 10,
"average": 8.4,
"stars": "40",
"min": 0,
"num_raters": 8799
},
"image": "https://img3.doubanio.com/lpic/s4505806.jpg",
"url": "https://book.douban.com/subject/25862527/",
"alt": "https://book.douban.com/subject/25862527/",
" publishers": "南海出版公司",
"summary": "生命中总有些解不开的忧愁,让我们无法释怀。而一封封来自未来的信件,能否成为治愈这些忧愁的良药?",
"media_type": "book"
}
五、其他API调用技巧
分页处理:豆瓣API支持分页处理,你可以通过
start和count参数控制每页显示的数据量。搜索功能:豆瓣API提供了搜索接口,你可以通过搜索关键词获取相关数据。
筛选条件:部分API支持筛选条件,如电影API可以根据类型、地区、年代等筛选电影。
数据格式:豆瓣API返回的数据格式为JSON,你可以使用Python的
json模块进行解析。
六、总结
掌握豆瓣API调用技巧,可以帮助我们轻松获取电影、书籍等海量信息。通过本文的介绍,相信你已经对豆瓣API有了初步的了解。在实际应用中,你可以根据自己的需求进行探索和尝试,充分发挥豆瓣API的潜力。
