How's My WiFi?

08 December 2017   2 comments   MacOSX, Javascript, Node

This was one of those late-evening-after-the-kids-are-asleep project. Followed by some next-morning-sober-readme-fixes-and-npmjs-paperwork.

It's a little Node script that will open with puppeteer , and record, using document.querySelector('#speed-value') what my current Internet speed is according to that app. It currently only works on OSX but it should be easy to fix for someone handy on Linux or Windows.

You can either run it just once and get a readout. That's basically as useful as opening in a new browser tab.
The other way is to run it in a loop howsmywifi --loop and sit and watch as it tries to figure out what your Internet speed is after multiple measurements.


That's it!

The whole point of this was for me to get an understanding of what my Internet speed is and if I'm being screwed by Comcast. The measurements are very erratic and they might sporadically depend on channel noise on the WiFi or just packet crowding when other devices is overcrowding the pipes with heavy downloads such as video chatting or watching movies or whatever.

I've seen 98 Mbps with my iPhone on this network. Not so much today.

And Screenshots!

As a bonus, it will take a screenshot (if you pass the --screenshots flag) of the page each time it has successfully measured. Not sure what to do with this. If you have ideas, let me know.


Peter Bengtsson

Thanks! That's neat.

However, there's just something about the speedtest Flash banner ads that makes me trust better :)

Your email will never ever be published

Related posts

Really simple Django view function timer decorator 08 December 2017
Another win for Tracking Protection in Firefox 13 December 2017
Related by Keyword:
NodeJS fs walk() or glob or fast-glob 31 August 2019
An awesome snippet to web performance test a page programmatically 01 October 2018
Python slow-down of exception handling or condition checking 14 May 2015
mincss now support PhantomJS 02 February 2013
How I stopped worrying about IO blocking Tornado 18 September 2012