Glavni problem s provjeravanjem brzine interneta pomoću Pythona je taj što ne postoji standardizirani način za to. Različiti programi će vam dati različite rezultate, pa čak i ako jedan program kaže da je vaša veza brza, to možda nije slučaj u stvarnosti.
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()
Prva tri reda uvoze module speedtest, os i time.
Sljedeći red definira funkciju pod nazivom test_speed(). Ova funkcija koristi modul speedtest za testiranje brzine internetske veze i vraća rezultate.
Sljedeći red definira funkciju pod nazivom main(). Ova funkcija poziva funkciju test_speed() i ispisuje rezultate. Zatim spava 5 sekundi prije ponavljanja.
Konačno, ako se ova datoteka pokreće kao skripta (umjesto da se uvozi kao modul), poziva se funkcija main().
Šta je brzina interneta
Brzina interneta u Pythonu se može mjeriti u bajtovima u sekundi.
Usluge brzine interneta
Postoji nekoliko različitih načina za mjerenje brzine internetske veze u Pythonu. Najjednostavniji način je korištenje ugrađene funkcije time. time() ispisuje trenutno vrijeme u sekundama.
Drugi način mjerenja brzine internetske veze je korištenje naredbe netstat. netstat prikazuje sve aktivne mrežne veze i njihov status. Da biste dobili informacije o brzini određene mrežne veze, koristite opciju -i:
$ netstat -i | grep “:80” Aktivne Internet veze (serveri i klijenti) Proto Recv-Q Send-Q Lokalna adresa Strana adresa Stanje PID/ime programa tcp 0 0 127.0.0.1:80 0.0.0.0:* LISTEN 548/sshd tcp6 0 0 ::80 :::* LISTEN 672/docker tcp6 0 1 ::1:80 :::* LISTEN 672/docker