📜  Python IMDbPY – 以 XML 格式获取系列流派(1)

📅  最后修改于: 2023-12-03 14:45:59.221000             🧑  作者: Mango

Python IMDbPY – 以 XML 格式获取系列流派

IMDbPY是一个Python组件,可用于处理Internet Movie Database(IMDb)数据。 IMDb是一个保存有关电影、电视节目、演员、编剧、制片人、制作人员等的信息的数据库。 IMDbPY可提供访问这些信息的API。

在此处,我们将讨论如何使用IMDbPY获取系列的流派,并将结果以XML文件的格式输出。 我们将使用Python 3.x进行演示。

安装IMDbPY

首先,我们需要安装IMDbPY。可以使用以下命令安装。

pip install IMDbPY
导入相关模块
import imdb
import xml.etree.cElementTree as ET
IMDbPY - 获取电视剧和电影的流派

我们可以使用imdb.Movie和imdb.TV类从IMDbPY中获取电影和电视剧的元数据。为了以XML格式输出结果,我们将使用Python的内置库xml.etree.cElementTree。

imdb_access = imdb.IMDb()
movie_id = "tt1375666"
series = imdb_access.get_movie(movie_id)
imdb_access.update(series, 'genres')

现在我们已经从IMDb获得了该系列的信息,并且我们已经更新了series.genres

接下来,我们创建一个XML文件,并将诸如标题、年份、流派之类的信息添加到它。

tree = ET.ElementTree(ET.Element('Movie'))

movie_tag = ET.SubElement(tree.getroot(), 'Movie_Details')

title_tag = ET.SubElement(movie_tag, 'Title')
title_tag.text = series['title']

year_tag = ET.SubElement(movie_tag, 'Year')
year_tag.text = str(series['year'])

genre = ""
for i in series['genres']:
    genre += i + ", "

genre_tag = ET.SubElement(movie_tag, 'Genres')
genre_tag.text = genre[:-2]

最后,我们将输出XML文件。

tree.write('output.xml', encoding='unicode')
完整的Python代码
import imdb
import xml.etree.cElementTree as ET

imdb_access = imdb.IMDb()
movie_id = "tt1375666"
series = imdb_access.get_movie(movie_id)
imdb_access.update(series, 'genres')

tree = ET.ElementTree(ET.Element('Movie'))

movie_tag = ET.SubElement(tree.getroot(), 'Movie_Details')

title_tag = ET.SubElement(movie_tag, 'Title')
title_tag.text = series['title']

year_tag = ET.SubElement(movie_tag, 'Year')
year_tag.text = str(series['year'])

genre = ""
for i in series['genres']:
    genre += i + ", "

genre_tag = ET.SubElement(movie_tag, 'Genres')
genre_tag.text = genre[:-2]

tree.write('output.xml', encoding='unicode')
总结

在本文中,我们了解了如何使用IMDbPY和Python以XML格式获取电视剧和电影的流派。我们使用了Python内置的xml.etree库,可以创建一个XML文件,通过添加特定的标记包含电视剧或电影的元数据,可以输出结果。