sys模块设置递归深度。。。。报错RecursionError: maximum recursion depth exceeded while calling a Python object

RecursionError: maximum recursion depth exceeded while calling a Python object

爬虫的朋友一般分页或者回调的时候就经常会遇到这个错误,英文意思很明白,超过了Python的最大递归深度

python默认的递归深度是很有限的(默认是1000),因此当递归深度超过999的样子,就会引发这样的一个异常。

解决方法很简单,在代码头部加入:(修改递归深度的值,让它变大大一点)

import sys
sys.setrecursionlimit(1000000)


这样修改Python最大递归为100万次,根据个人需求设置次数。

结语

这个解决方法并不治本,还需要在代码上进行优化。我出现这个错误的原因是忽略了对爬取页面的异常值处理,在增加判断之后,递归深度一般达不到python的默认限制。

猜你喜欢

转载自blog.csdn.net/Ren_ger/article/details/85068955