文章详情页
python - 如何解决程序运行太久之后被操作系统暂停的情况?
浏览:315日期:2022-06-29 14:48:35
问题描述
我有几个python爬虫程序,需要持续不间断运行,但是每次都是运行了两天之后变得无响应,每次都是阻塞在time.sleep(60)的地方,但是进程又没有死掉,在控制台输入Ctrl C都不能退出程序,只能在任务管理器里强制退出才行。
请问这是由什么原因导致的?以及如何解决这个问题?
先谢谢各位前辈了!
问题解答
回答1:问题分析建议:
linux: 可以尝试通过strace命令追踪进程状态, 根据输出的内容做分析,或者通过proc对应目录的文件对进程的各项指标做分析! Ctrl-C无效,怀疑进程进入不可中断的睡眠,具体还得看实际获取的数据才有可能知道
windows: 通过任务管理器找到对应的进程, 右键->创建转储文件, 分析该转储文件看能否找出原因.
爬虫程序: 自身对爬取的进度,做详细的日志, 不管是链接,还是遇到的异常,最好都记录下来,以便得知具体停止的时间, 和停止时,爬取的进度, 下次可以先针对这个进度再去深入分析.
回答2:linux系统的话试试用crontab去做定时任务windows用任务计划
相关文章:
1. python - pig latin问题 总是出现list/string index out of range2. 安装mysql,完成时提示的是用户名root,在终端查看版本时显示的不是root,请问这怎么解决3. javascript - sublime已经安装了babel插件和sublimelinter-jshint为什么还是显示es6语法错误?4. css3 - canvas在IOS8中不兼容。画不出来。5. 为什么HTML5规范中会包含一些和html无关的东西?如本地存储等。6. 闯关的第二个问题的答案是错的吧?7. css3 - img垂直水平居中问题8. javascript - angularJS select标签问题9. javascript - nginx 反向代理 js跨域问题?10. python - Pycharm调试代码进行列表遍历时,如何直接赋值指定元素
排行榜

网公网安备