【发布时间】:2021-06-16 15:08:43
【问题描述】:
博客:分析 IMDb 的前 250 部电影:第 1 部分;让我们抓取一些数据
问题是,每当我想检索 IMDb 的前 250 部电影中的单个页面链接时,都会出现错误:AttributeError: 'NoneType' object has no attribute 'get_text' 这意味着我理解它没有所需的类名或我们的元素在 HTML 中寻找。但是 HTML 由我传递的类名组成。
我正在实现与博客相同的内容,但我无法检索单个电影并抓取数据。
以下是与博客中相同的代码:
import requests # Simpler HTTP requests
from bs4 import BeautifulSoup # Python package for pulling data out of HTML and XML files
import pandas as pd # Python package for data manipulation and analysis
import re # regular expressions
import json # Python package used to work with JSON data
from tqdm import tqdm # python for displaying progressbar
from datetime import datetime
url = 'https://www.imdb.com/chart/top'
url_text = requests.get(url).text
soup = BeautifulSoup(url_text, 'html.parser'
template = 'https://www.imdb.com%s'
title_links = [template % a.attrs.get('href') for a in url_soup.select( 'td.titleColumn a' )]
movie_name = (page_soup.find("div",{ "class":"title_wrapper" }).get_text( strip=True ).split('|')[0]).split('(')[0]
【问题讨论】:
-
您的代码没有运行,似乎缺少一些变量声明,例如
url_soup和page_soup
标签: python web web-scraping python-requests