网页爬虫代码报错NameError:home_team未定义,求解决方案
解决爬虫代码中的NameError问题
NameError: name 'home_team' is not defined这个错误的核心原因很明确:你在调用home_team.append()、score.append()这些方法之前,没有提前创建(初始化)这三个列表变量。Python里所有变量必须先定义才能使用,直接调用未定义变量的方法必然会报错。
正确的解决步骤:
- 在for循环代码的前面,先初始化三个空列表:
# 先定义空列表,后续才能往里面追加内容 home_team = [] score = [] away_team = []
- 保留你最初的循环逻辑即可(不需要像修改后的代码那样把append的结果赋值给新变量——因为列表的
append()方法返回的是None,赋值操作完全没用):
for match in match_data: home_team.append(match.find('th', class_='fhome').get_text()) score.append(match.find('th', class_='fscore').get_text()) away_team.append(match.find('th', class_='faway').get_text())
你修改后的代码依然报错,是因为根本问题没解决——还是没初始化home_team等列表,反而多了无意义的赋值操作,完全没必要。
内容的提问来源于stack exchange,提问作者obabtd
相关产品推荐
相关产品推荐

