用Python编写的IMDb电影搜索引擎
发布时间:2023-12-11 09:01:34
# Python编写的IMDb电影搜索引擎
## 简介
IMDb(Internet Movie Database)是一个涵盖电影、电视节目、电视明星以及其他类似娱乐的相关信息的在线数据库。我们可以利用Python编写一个IMDb电影搜索引擎,通过输入电影名称来获取该电影的基本信息。
## 实现步骤
我们可以使用Python的requests库来发送网络请求,从IMDb的API获取相关电影信息。下面是一个实现IMDb电影搜索引擎的例子:
import requests
def search_movie(movie_name):
url = f"http://www.omdbapi.com/?apikey=your_api_key&t={movie_name}"
response = requests.get(url)
data = response.json()
if data["Response"] == "True":
movie_info = {
"Title": data["Title"],
"Year": data["Year"],
"Genre": data["Genre"],
"Director": data["Director"],
"Actors": data["Actors"],
"Plot": data["Plot"],
"Poster": data["Poster"]
}
return movie_info
else:
return None
# 使用示例
movie_name = input("请输入电影名称: ")
movie_info = search_movie(movie_name)
if movie_info:
print(f"电影名称: {movie_info['Title']}")
print(f"上映年份: {movie_info['Year']}")
print(f"类型: {movie_info['Genre']}")
print(f"导演: {movie_info['Director']}")
print(f"演员: {movie_info['Actors']}")
print(f"剧情简介: {movie_info['Plot']}")
# 获取海报并保存到本地
response = requests.get(movie_info["Poster"])
with open("poster.jpg", "wb") as f:
f.write(response.content)
print("海报已保存到本地")
else:
print("未找到该电影")
## 使用例子
这个搜索引擎通过用户输入电影名称来搜索电影,并返回电影的基本信息,包括电影名称、上映年份、类型、导演、演员以及剧情简介。同时,它还会将电影的海报保存到本地。
下面是一个使用例子:
请输入电影名称: Avengers: Endgame 电影名称: Avengers: Endgame 上映年份: 2019 类型: Action, Adventure, Drama, Sci-Fi 导演: Anthony Russo, Joe Russo 演员: Robert Downey Jr., Chris Evans, Mark Ruffalo, Chris Hemsworth 剧情简介: After the devastating events of Avengers: Infinity War (2018), the universe is in ruins. With the help of remaining allies, the Avengers assemble once more in order to undo Thanos' actions and restore order to the universe. 海报已保存到本地
通过这个搜索引擎,我们可以方便地获取到IMDb上任何电影的基本信息,并保存电影海报到本地。同时可以根据实际需求对代码进行扩展,比如将搜索结果展示在一个GUI界面上。
