Promising news on the Netherlands / Belgium front. I’ve identified the endpoints that return the station data in JSON (rather than an image) by proxying the requests the mobile app makes. Need to figure out how to generate the checksum that is sent, but looking through the code for the mobile app, it appears to just be a SHA1 hash based on current date and time, random GUID and the file part of the URL. Example response below:
{
"date": [
2023,
12,
24
],
"id": 4747,
"lat": 51.97354,
"lng": 5.66068,
"brand": "Total",
"name": "Express",
"city": "Wageningen",
"country": "NL",
"address": "v Uvenweg 119",
"postalCode": "6708AE",
"phoneNr": "0344614734",
"services": [
"unmanned",
"gas247",
"carwash"
],
"openingTimes": [
{
"types": [
"fuel"
],
"mon": [
0,
2400
],
"tue": [
0,
2400
],
"wed": [
0,
2400
],
"thu": [
0,
2400
],
"fri": [
0,
2400
],
"sat": [
0,
2400
],
"sun": [
0,
2400
]
}
],
"fuels": [
{
"key": "e10",
"name": "Euro 95 (E10)",
"price": 1859,
"nextPrice": 1919
},
{
"key": "diesel",
"name": "Diesel (B7)",
"price": 1669,
"nextPrice": 1749
},
{
"key": "euro98",
"name": "Euro 98 (E5)",
"price": 2179
},
{
"key": "diesel_special",
"name": "Premium Diesel (B7)",
"price": 1899
}
]
}