代码上传至https://github.com/gatieme/AderXCoding/blob/master/python/error/depth-exceeded.py
问题
这段时间用Python写了一个爬虫脚本,在抓取页面采用广度优先遍历抓取。但是当遍历到1000左右时就会出现莫名其妙的错误,
通过pdb调试发现是:
RuntimeError: maximum recursion depth exceeded
- 1

解析
发现python默认的递归深度是很有限的(默认是1000),因此当递归深度超过999的样子,就会引发这样的一个异常。
于是我们写了下面的代码进行测试,
在代码中函数func递归的调用自己,并且不退出
在使用Python编写爬虫时遇到RuntimeError: maximum recursion depth exceeded的问题。原因是Python默认递归深度有限,超过1000次时会触发异常。通过测试发现,递归函数在超过999次后引发该异常。解决方法包括手动设置递归深度或优化代码避免深递归。
订阅专栏 解锁全文
2775

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



