Pythonで処理を一時停止させる方法として、sleep
関数があります。この関数を使うことで、プログラムの実行を一定時間待機させることができます。
sleep関数とは
sleep
関数は、Pythonの標準ライブラリであるtime
モジュールに含まれる関数の一つで、プログラムの実行を一時的に停止させるために使用されます。この関数を使うことで、指定した秒数だけプログラムの実行を一時停止させることができます。
sleep関数の基本的な使い方
sleep
関数の基本的な使い方は以下のようになります。
import time
time.sleep(秒数)
ここで、秒数には一時停止させたい秒数を小数点以下も含めて指定することができます。例えば、1秒待ちたい場合は time.sleep(1)
、0.5秒待ちたい場合は time.sleep(0.5)
と指定します。
sleep関数を活用した応用例
ループ処理でのsleep関数の利用
ループ処理では、繰り返し同じ処理を行うことが多いです。sleep
関数を使って、ループの各ステップで一定時間待機させることができます。
import time
for i in range(5):
print(f"{i + 1}回目の処理")
time.sleep(1)
print("処理が終了しました。")
このコードでは、1秒ごとに「1回目の処理」「2回目の処理」…「5回目の処理」と表示され、最後に「処理が終了しました。」と表示されます。
タイマー機能の実装
sleep
関数を使って、簡単なタイマー機能を実装することができます。
import time
def timer(seconds):
while seconds > 0:
print(f"残り{seconds}秒")
time.sleep(1)
seconds -= 1
print("タイマーが終了しました。")
timer(5)
このコードでは、引数で指定した秒数だけカウントダウンし、タイマーが終了したことを表示します。
ウェブスクレイピングでの適切な待ち時間設定
ウェブスクレイピングを行う際には、サーバーに負荷をかけないように適切な待ち時間を設定することが重要です。sleep
関数を使って、リクエスト間に一定時間待機させることができます。
import time
import requests
from bs4 import BeautifulSoup
urls = ["https://example.com/page1", "https://example.com/page2", "https://example.com/page3"]
for url in urls:
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
# スクレイピング処理
# ...
time.sleep(3) # 3秒待機
このコードでは、ウェブページのリストを順番に取得し、スクレイピング処理を行った後に3秒待機しています。これにより、サーバーに過剰な負荷をかけずにデータを取得することができます。
以上が、sleep
関数の基本的な使い方と活用例です。プログラムの処理を一時停止させる際には、sleep
関数を活用してみてください。