如何从IMDB网站上抓取电影信息?

时间:2019-05-13 10:57:40

标签: python loops web-scraping imdb imdbpy

我是Python的新手,正在尝试抓取IMDB。我正在抓取250部IMDB顶级电影的清单,并希望获得每个唯一网站上的信息,例如每个电影的长度。

我已经有一个唯一URL列表。因此,我想遍历此列表,并针对该列表中的每个URL检索该电影的“长度”。这可以用一个代码完成吗?

for URL in urlofmovie:
    htmlsource = requests.get(URL)
    tree_url = html.fromstring(htmlsource)
    lengthofmovie = tree_url.xpath('//*[@class="subtext"]')

我希望lengthofmovie将成为所有电影长度的列表。但是,它在第​​2行htmlsource上已经出错。

1 个答案:

答案 0 :(得分:2)

要使其成为列表,您应该首先创建一个列表,然后将每个长度附加到该列表中。

length_list = []
for URL in urlofmovie:
    htmlsource = requests.get(URL)
    tree_url = html.fromstring(htmlsource)
    length_list.append(tree_url.xpath('//*[@class="subtext"]'))

小技巧:由于您是Python新手,因此建议您翻阅PEP8 conventions。您的变量命名可以使您(和其他开发人员)的生活更轻松。 (urlofmovie-> urls_of_movies)

  

但是,第二行htmlsource已经出错了。

请提供您收到的例外情况。