Минималистичный CLI-инструмент для замера скорости интернета. Отправляет N последовательных HTTP-запросов на указанный URL и выводит среднее время запроса и скорость в МБ/с.
- Отправляет
Nпоследовательных GET-запросов на указанный URL (по умолчанию: 10). - Для каждого запроса фиксирует время ответа и размер.
- Выводит результат каждого запроса, затем итоговую сводку:
- суммарный объём скачанных данных
- среднее время запроса
- средняя скорость в МБ/с
git clone https://github.com/<you>/speedtest.git
cd speedtest
pip install -r requirements.txtpython speedtest.py --url <URL> [--requests N]| Аргумент | Сокращение | По умолчанию | Описание |
|---|---|---|---|
--url |
-u |
обязательный | URL файла для скачивания |
--requests |
-n |
10 |
Количество последовательных запросов |
# 10 запросов к тестовому эндпоинту Selectel (100 МБ)
python speedtest.py --url https://speedtest.selectel.ru/100MB
# Своё количество запросов
python speedtest.py --url https://speedtest.selectel.ru/100MB --requests 5Тест скорости: https://speedtest.selectel.ru/100MB
Запросов : 10
[ 1/10] 1.774с 100.00 МБ 56.35 МБ/с
[ 2/10] 1.503с 100.00 МБ 66.56 МБ/с
...
[ 9/10] 1.624с 100.00 МБ 61.58 МБ/с
[10/10] 1.538с 100.00 МБ 65.01 МБ/с
====================================================
РЕЗУЛЬТАТЫ
====================================================
URL : https://speedtest.selectel.ru/100MB
Запросы : 10/10 успешных
Скачано данных : 1000.00 МБ
Среднее время запроса: 1.591 с
Средняя скорость : 62.85 МБ/с
====================================================
- Запросы выполняются последовательно, не параллельно — так измеряется пропускная способность одного соединения.
- Используется единая
requests.Sessionдля переиспользования TCP-соединения между запросами. - Результаты отражают реальную скорость с учётом DNS, TLS-хендшейка и времени ответа сервера.