First, All of the the database results are from TestMy.net only.
There are also several ways you can programmatically extract the averages.
I'll use Comcast as an example but this works for locations as well.
Basic json of what you see rendered on Comcast's hoststats page
https://testmy.net/hoststats/comcast_cable?jsonout=1
CSV output to file
https://testmy.net/hoststats/comcast_cable?csvout=1
CSV output rendered in page
https://testmy.net/hoststats/comcast_cable?csvout=1&easycsv=1
You can also specify how far back and output the averages
https://testmy.net/hoststats/comcast_cable?csvout=2&monthsback=12&easycsv=1
Note for the output, I use pipes (e.g. " | ") as a separator. Below I'm adding line breaks to make it easier to read.
"April 2022","May 2022","June 2022","July 2022","August 2022","September 2022","October 2022","November 2022","December 2022","January 2023","February 2023","March 2023","April 2023","May 2023","June 2023","July 2023","August 2023","September 2023","October 2023","November 2023","December 2023","January 2024","February 2024","March 2024"
|219.5,192.5,190.6,156.1,157,210.8,165.5,224,215.5,215.5,209.6,168.4,206.6,203.6,220.9,270.5,272.4,218.3,244.9,240.8,299.5,249.9,312.7,190.5
|9.9,17.4,15.2,16,14.6,17.7,37.1,16.5,13.6,15.6,17.7,17.1,18.6,14.2,21.3,22.1,22.9,24.2,27.8,34.1,28.1,25.7,26.7,22.9
|'NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL','NULL',95,92,89,92,123,107,91,114,104,75,119,81,127,79,78,106,82,76,97,89,95,194,71,61
Translates to...
Date Field
|Download
|Upload
|Latency
You can make a simple program to CURL and parse that output, explode and then make arrays out of the data. Make sure you set a reasonable limit to how often you query or it will be seen as a threat.
And please share with others where you're getting your data. TMN is 100% word of mouth.