Python实现监控一个程序的运行情况

这篇文章主要为大家介绍了Python如何实现监控一个程序的运行情况,然后视情况将进程杀死并重启,文中的示例代码简洁易懂,需要的可以参考一下

目录

一、前言

在使用selenium库爬取一些小东西,经常出现程序进入死循环的情况。导致一个简简单单的需求,居然花了3天没跑完,很是气愤。遂给写了一个监听程序,当爬虫死机一定时间的时候,就把这只爬虫拍死,然后根据日志从上次爬的地方重启一只新爬虫。

二、使用psutil库和subprocess库介绍

当涉及到与操作系统进行交互的时候,Python中的 psutil 和 subprocess 库都是非常有用的工具。

1.psutil 库

psutil(process and system utilities)是一个跨平台的库,提供了许多有用的系统和进程信息。通过 psutil 库,我们可以轻松地获取操作系统的各种信息,如 CPU 使用情况、内存使用情况、磁盘使用情况等等。此外,psutil 还可以用于获取和操作进程信息,如获取进程的 CPU 使用情况、内存使用情况、打开的文件和网络连接等等。

以下是 psutil 库的一些主要功能:

  • 获取 CPU 使用率、内存使用率、磁盘使用情况、网络信息等等。
  • 获取系统启动时间、用户数、主机名等等系统信息。
  • 获取进程的 PID、CPU 使用情况、内存使用情况、线程数等等信息。
  • 操作进程,如发送信号、终止进程等等。

2.subprocess 库

subprocess 库是用于在 Python 程序中执行外部命令的标准库。通过 subprocess 库,我们可以启动一个子进程来执行外部命令,然后在 Python 程序中捕获并处理该命令的输出。subprocess 库提供了多个函数,如 Popen、call、check_call 等等,以便于我们执行外部命令和处理命令的输出。

以下是 subprocess 库的一些主要功能:

  • 启动子进程并执行外部命令。
  • 在子进程中捕获并处理命令的输出。
  • 设置子进程的环境变量、工作目录等等属性。
  • 通过管道连接多个子进程,从而实现数据流的处理。

总之,psutil 和 subproc

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值