【发布时间】:2019-02-13 17:08:13
【问题描述】:
我正在尝试使用 Python 在 IMDb 上抓取电影,我可以获取有关所有重要方面的数据,但演员姓名除外。
这是我正在处理的示例 URL:
https://www.imdb.com/title/tt0106464/
使用“检查”浏览器功能,我找到了与所有参与者名称相关的 XPath,但在 Python 上运行代码时,XPath 看起来无效(不返回任何内容)。
这是我正在使用的代码的简单版本:
import requests
from lxml import html
movie_to_scrape = "https://www.imdb.com/title/tt0106464"
timeout_time = 5
IMDb_html = requests.get(movie_to_scrape, timeout=timeout_time)
doc = html.fromstring(IMDb_html.text)
actors = doc.xpath('//table[@class="cast_list"]//tbody//tr//td[not(contains(@class,"primary_photo"))]//a/text()')
print(actors)
我多次尝试更改 XPath,试图使其更通用,然后更具体,但它仍然没有返回任何内容
【问题讨论】:
-
您没有查看页面,而是查看了datasets that IMDb provides?或者类似IMDbPY?
-
如果 xpath 无效 html.fromstring 会引发异常。
标签: python python-3.x xpath web-scraping imdb