自动停止 python 爬虫可通过以下方法实现:设置计时器:使用 time 模块的 sleep() 函数休眠爬虫,然后使用 sys.exit() 停止。使用信号处理:注册一个信号处理函数,当收到特定信号时停止爬虫。监听键盘输入:使用 msvcrt 模块(仅适用于 Windows)或 getch() 函数侦听键盘输入,按下特定键时停止爬虫。
如何自动停止 Python 爬虫
直接回答:
自动停止 python 爬虫可以通过设置计时器、使用信号处理和监听键盘输入来实现。
详细解答:
立即学习“Python免费学习笔记(深入)”;
1. 设置计时器
- 使用 time 模块的 sleep() 函数对爬虫进行休眠,然后使用 sys.exit() 停止它。
import time import sys try: # 执行爬取任务 pass except Exception as e: print(e) time.sleep(600) # 等待 600 秒 sys.exit(0)
2. 使用信号处理
- 使用 signal 模块注册一个信号处理函数,当收到特定信号时停止爬虫。
import signal import sys def signal_handler(signal, frame): print("收到停止信号,停止爬虫") sys.exit(0) signal.signal(signal.SIGINT, signal_handler) try: # 执行爬取任务 pass except Exception as e: print(e)
3. 监听键盘输入
- 使用 msvcrt 模块(仅适用于 Windows)或 getch() 函数(适用于其他系统)侦听键盘输入。
import msvcrt while True: if msvcrt.kbhit(): key = msvcrt.getch() if key == b'q': print("按下 q 键,停止爬虫") break # 执行爬取任务