Solucionat: comproveu la velocitat d'Internet amb Python

Darrera actualització: 09/11/2023

El principal problema de comprovar la velocitat d'Internet amb Python és que no hi ha cap manera estandarditzada de fer-ho. Diferents programes us donaran resultats diferents, i fins i tot si un programa diu que la vostra connexió és ràpida, potser no és així en realitat.

import speedtest import os import time def test_speed(): s = speedtest.Speedtest() s.get_best_server() s.download() s.upload() return s.results.dict()['download'] / 8000000,  s.results.dict()['upload'] / 8000000,  s.results.dict()['ping'] def main(): while True: download, upload, ping = test_speed() print('Download: {:0.2f} MbpstUpload: {:0.2f} MbpstPing: {} ms'.format(download, upload, ping)) time.sleep(5) if __name__ == '__main__': main()

Les tres primeres línies importen els mòduls speedtest, os i time.

La línia següent defineix una funció anomenada test_speed(). Aquesta funció utilitza el mòdul Speedtest per provar la velocitat de la connexió a Internet i retorna els resultats.

La línia següent defineix una funció anomenada main(). Aquesta funció crida a la funció test_speed() i imprimeix els resultats. Després dorm durant 5 segons abans de repetir.

Finalment, si aquest fitxer s'executa com a script (en lloc d'importar-se com a mòdul), es crida la funció main().

Què és la velocitat d'Internet

La velocitat d'Internet a Python es pot mesurar en bytes per segon.

Serveis de velocitat d'Internet

Hi ha algunes maneres diferents de mesurar la velocitat d'una connexió a Internet a Python. La manera més senzilla és utilitzar el temps de funció incorporat. time() imprimeix l'hora actual en segons.

La segona manera de mesurar la velocitat d'una connexió a Internet és utilitzar l'ordre netstat. netstat mostra totes les connexions de xarxa actives i el seu estat. Per obtenir informació sobre la velocitat d'una connexió de xarxa específica, utilitzeu l'opció -i:

$ netstat -i | grep “:80” Connexions a Internet actives (servidors i clients) Proto Recv-Q Send-Q Adreça local Adreça estrangera Estat PID/Nom del programa tcp 0 0 127.0.0.1:80 0.0.0.0:* LISTEN 548/sshd tcp6 0 0 : ::80 :::* ESCOLTA 672/docker tcp6 0 1 ::1:80 :::* ESCOLTA 672/docker

Articles Relacionats: