ITPub博客

首页 > IT职业 > IT职场 > python定时爬虫启用时如何减少内存?

python定时爬虫启用时如何减少内存?

IT职场 作者:ldzsl 时间:2021-09-11 10:07:29 0 删除 编辑

我们在同时处理多个事情的时候,可能同时打开浏览器、办公软件等不同的几个程序,一旦过多电脑运行就会变慢。要是还不断地加入新的程序,电脑就会卡的动不了,然后宣布它不跟我们玩了。我们定时获取数据的时候,程序启动的也是非常多的,而且还不断有新的数据获取保存下来,那么我们有没有什么方法可以减少程序运行所占有的cpu率呢?


现在需要启动一个selenium的爬虫,使用火狐驱动+多线程,大家都明白的,现在电脑管家显示CPU占用率20%,启动selenium后不停的开启浏览器+多线程。

没过5分钟,CPU占用率直接拉到90%+,电脑卡到飞起,定时程序虽然还在运行,但是已经类似于待机状态。

代码解决:

from datetime import datetime
from threading import Timer
import time
 
# 定时任务
def task():
  print(datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
 
def timedTask():
  '''
  第一个参数: 延迟多长时间执行任务(秒)
  第二个参数: 要执行的函数
  第三个参数: 调用函数的参数(tuple)
  '''
  Timer(5, task, ()).start()
 
while True:
  timedTask()
  time.sleep(5)


7行代码,是不是很优雅?

2020-06-05 14:06:39
2020-06-05 14:06:44
2020-06-05 14:06:49
2020-06-05 14:06:54
2020-06-05 14:06:59
2020-06-05 14:07:04
2020-06-05 14:07:09
2020-06-05 14:07:14
2020-06-05 14:07:19
2020-06-05 14:07:24


本来一堆繁复的程序卡的电脑界面动弹不得,只要以上几行代码就可以还给我们一个运行流畅的环境,小伙伴们还不赶紧动手尝试下嘛,试完真的不卡了!更多Python学习指路:PyThon学习网教学中心。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2325/viewspace-2832026/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2016-01-19

  • 博文量
    72
  • 访问量
    12923