RecursionError: maximum recursion depth exceeded while calling a Python object
爬虫的朋友一般分页或者回调的时候就经常会遇到这个错误,英文意思很明白,超过了Python的最大递归深度。
python默认的递归深度是很有限的(默认是1000),因此当递归深度超过999的样子,就会引发这样的一个异常。
解决方法很简单,在代码头部加入:(修改递归深度的值,让它变大大一点)
import sys
sys.setrecursionlimit(1000000)
这样修改Python最大递归为100万次,根据个人需求设置次数。
结语
这个解决方法并不治本,还需要在代码上进行优化。我出现这个错误的原因是忽略了对爬取页面的异常值处理,在增加判断之后,递归深度一般达不到python的默认限制。
本文介绍了解决Python爬虫中常见的递归深度超出错误的方法。通过调整Python的递归深度限制,可以暂时避免这一问题。然而,根本解决还需优化代码逻辑,如增加异常值处理,以防止递归深度达到默认限制。

1万+

被折叠的 条评论
为什么被折叠?



