プログラミング

Pythonで回線速度を定期的にチェックしてデータを視覚化する方法

はじめに

インターネットの回線速度が気になることってありますよね!
今回は、5分ごとに回線速度を計測し、そのデータをグラフにする方法を紹介します。PythonとSpeedtest CLIを使えば、比較的簡単に実現できます。

Pythonでデータをプロット

次は、Pythonを使って保存されたデータをグラフにします。必要なライブラリをインストールし、スクリプトを実行しましょう。

必要なライブラリをインストール

pip install speedtest-cli pandas matplotlib

pandas: データ解析と操作を行うための強力なPythonライブラリ
matplotlib: グラフやプロットを作成するためのPythonライブラリ
Speedtest: インターネット回線速度を測定するためのツール

Pythonスクリプトを作成

以下のPythonスクリプトを作成します。

import pandas as pd
import matplotlib.pyplot as plt

# データの読み込み
df = pd.read_csv('speedtest_results.csv', names=['Timestamp', 'Ping', 'Download', 'Upload'])

# タイムスタンプをパース
df['Timestamp'] = pd.to_datetime(df['Timestamp'])

# プロット
plt.figure(figsize=(12, 6))
plt.plot(df['Timestamp'], df['Download'], label='Download Speed (Mbps)')
plt.plot(df['Timestamp'], df['Upload'], label='Upload Speed (Mbps)')
plt.xlabel('Time')
plt.ylabel('Speed (Mbps)')
plt.title('Internet Speed Over Time')
plt.legend()
plt.grid(True)
plt.show()

実行方法

スクリプトを実行するには、以下のコマンドを使います。

python speedtest_script.py

実行した後に停止する場合は「Ctrl + C」のショットカットキーを入力することで計測を終了できます。

計測を終了した後は、以下のように5分ごとに計測された回線速度データがグラフ化されます。
結果を視覚化することで、回線の安定性やピーク時間を把握しやすくなりますね。また詳細を確認したい場合はcsvファイルも出力しているためExcelやSpreadSheetにデータを移してグラフ化も可能です!

まとめ

今回は、Speedtest CLIとPythonを使って、5分ごとに回線速度を計測し、そのデータをグラフ化する方法を紹介しました。スクリプトを使えば簡単に回線速度のモニタリングができるので、ぜひ試してみてください!

  • この記事を書いた人

あるせ

上場ゲーム会社の現役プログラマーで1児の父です。 プログラミングを始めたい方向けのライトな記事からゲーム開発の現場で得た知見まで幅広く発信します!

PickUp

1

bool変数の命名の重要性 プログラムを書くとき、bool型の変数名の付け方はとても重要です!なぜなら、コードを読む人にとって、変数名からその役割が直感的に分かることが求められるからです。bool値は ...

2

記事文章 はじめに WordPressを使ってブログを運営していると、毎回アイキャッチ画像を設定するのが手間ですよね!今回は、アイキャッチ画像を自動で生成するプラグインの作り方をご紹介します。これで作 ...

3

はじめに インターネットの回線速度が気になることってありますよね!今回は、5分ごとに回線速度を計測し、そのデータをグラフにする方法を紹介します。PythonとSpeedtest CLIを使えば、比較的 ...

-プログラミング
-,