728x90
반응형
우리나라는 인터넷의 속도가 매우 빠른 나라입니다.
인터넷 속도는 웹 페이지의 로딩, 파일 업/다운로드, 비디오 스트리밍 서비스 등을
이용하는데 중요한 요소중 하나입니다.
하지만 간혹 속도가 느려지는 경우도 있고,
사이트에서 속도측정을 하려고 하면
이것저것 다운로드 받게 만드는 경우가 있습니다.
오늘은 코드 몇줄로 간단하게
파이썬으로 인터넷 테스트를 해보는 방법을 알아보겠습니다.
728x90
환경준비
먼저 speedtest-cli 패키지를 설치합니다.
pip install speedtest-cli
해당 패키지는 아래 링크에서 확인이 가능합니다.
업/다운로드 속도 확인
아래 코드를 작성하면
간단하게 다운로드 속도 및 업로드 속도를 확인할 수 있습니다.
import speedtest
# Speedtest 객체 생성
speed = speedtest.Speedtest()
# 다운로드 및 업로드 속도 측정
print("다운로드 속도 측정중")
download_speed = speed.download()
print("업로드 속도 측정중")
upload_speed = speed.upload()
print(f"다운로드 속도: {(download_speed)} ")
print(f"업로드 속도: {(upload_speed)} ")
이 코드의 결과는 다음과 같습니다.
다운로드 속도: 70256437.7745459
업로드 속도: 22867623.806117933
속도가 기본적으로 BPS로 표시가 되기 때문에
보기 편하도록 Mbps로 바꾸어 보겠습니다.
Bps를 1024로 두번 나누면
Mbps가 되니 간단하게 수정하겠습니다.
import speedtest
# Speedtest 객체 생성
speed = speedtest.Speedtest()
# 다운로드 및 업로드 속도 측정
print("다운로드 속도 측정중")
download_speed = speed.download()
print("업로드 속도 측정중")
upload_speed = speed.upload()
# MBps로 변경
download_speed_Mbps = download_speed / 1024 / 1024
upload_speed_Mbps = upload_speed / 1024 / 1024
print(f"다운로드 속도: {(download_speed_Mbps)} MBps")
print(f"업로드 속도: {(upload_speed_Mbps)} MBps")
이제 MBps로 표시가 됩니다.
소수점 이하 숫자가 너무 많으므로,
소수점 이하 2자리까지 표시하면 다음과 같습니다.
아래 부분을 수정하였습니다.
print(f"다운로드 속도: {round(download_speed_Mbps, 2)}MBps")
print(f"업로드 속도: {round(upload_speed_Mbps, 2)}MBps")
반응형
Ping 값 측정하기
한 두줄만 추가하면
Ping 값도 측정이 가능합니다.
ping = speed.results.ping
print(f"핑 테스트: {(ping)}ms")
코드 전체
전체 코드는 다음과 같습니다.
import speedtest
# Speedtest 객체 생성
speed = speedtest.Speedtest()
# 다운로드 및 업로드 속도 측정
print("다운로드 속도 측정중")
download_speed = speed.download()
print("업로드 속도 측정중")
upload_speed = speed.upload()
#Ping Test
ping = speed.results.ping
# MBps로 변경
download_speed_Mbps = download_speed / 1024 / 1024
upload_speed_Mbps = upload_speed / 1024 / 1024
print(f"다운로드 속도: {round(download_speed_Mbps, 2)}MBps")
print(f"업로드 속도: {round(upload_speed_Mbps, 2)}MBps")
print(f"핑 테스트: {(ping)}ms")
마 치 며
인터넷 속도 측정은 여러가지 요인에 의해 영향을 받습니다.
네트워크의 상태, 장치의 성능 등 여러가지 요인이 영향을 미치므로
동일한 조건에서 다른 인터넷 속도 측정 방법과
병행하시면 보다 정확한 테스트를 하실 수 있을 겁니다.
여기를 방문하시면 더 많은 파이썬 관련 자료를 확인할 수 있습니다.
728x90
반응형
'파이썬(Python)' 카테고리의 다른 글
[ psutil ] 내 컴퓨터에서 특정 프로그램이 실행되고 있는 지 확인하기, psutil 라이브러리 (0) | 2024.08.23 |
---|---|
[ CoustomTkinter ] 현대적이고 세련된 파이썬 GUI CustomTkinter (0) | 2024.08.23 |
[ Tkinter ] Tkinter StringVar()를 사용한 레이블(Label) 텍스트 업데이트 (0) | 2024.01.11 |
[ Tkinter ] Tkinter 레이블(Label)의 크기, 배경색 및 글자색 설정하기 (0) | 2024.01.11 |
[ Tkinter ] Tkinter 기본적인 Label 만들기, 텍스트와 이미지 표시하기 (0) | 2024.01.10 |