AttributeError: 'NoneType' object has no attribute 'find_all'
时间: 2023-06-21 11:22:10 浏览: 72
AttributeError: ‘NoneType’ object has no attribute ‘children’ 错误
5星 · 资源好评率100%
这个错误通常是由于 `find` 方法没有找到任何匹配的元素而返回了 `None`,接着执行 `find_all` 方法时就会出现 `AttributeError: 'NoneType' object has no attribute 'find_all'` 的错误。
解决方法是在调用 `find` 方法之后,先判断它返回的是否是 `None`,如果是的话就不再执行 `find_all` 方法。可以使用类似下面的代码:
```python
rating_num = movie.find('span', class_='rating_num')
if rating_num:
rating_num = rating_num.text
else:
rating_num = ''
```
上面的代码首先使用 `find` 方法查找 `span` 标签中 `class` 属性为 `rating_num` 的元素,如果找到了就获取它的文本,否则将 `rating_num` 赋值为空字符串。这样就避免了在 `None` 对象上调用 `find_all` 方法而出现错误的问题。
阅读全文