From e9cc5d288eb8f11fcdfc801c9c24d442fe4936cd Mon Sep 17 00:00:00 2001 From: Marco Migozzi Date: Mon, 5 Oct 2026 10:00:02 +0200 Subject: [PATCH] freeview.co.uk: share HEADERS with channels() --- sites/freeview.co.uk/freeview.co.uk.config.js | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/sites/freeview.co.uk/freeview.co.uk.config.js b/sites/freeview.co.uk/freeview.co.uk.config.js index 956929704..585a39da9 100644 --- a/sites/freeview.co.uk/freeview.co.uk.config.js +++ b/sites/freeview.co.uk/freeview.co.uk.config.js @@ -5,6 +5,11 @@ const parseDuration = require('parse-duration').default dayjs.extend(utc) +const HEADERS = { + 'User-Agent': + 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36' +} + module.exports = { site: 'freeview.co.uk', days: 2, @@ -41,7 +46,9 @@ module.exports = { for (let networkId = 64257; networkId <= 64425; networkId++) { // loop through all valid networkIds starting from 64257 (Greater London) to 64425 (Belfast) to ensure we can get all the channels available on freeview console.log(networkId) const data = await axios - .get(`https://www.freeview.co.uk/api/tv-guide?nid=${networkId}&start=${startTimestamp}`) + .get(`https://www.freeview.co.uk/api/tv-guide?nid=${networkId}&start=${startTimestamp}`, { + headers: HEADERS + }) .then(r => r.data) .catch(console.log) @@ -85,12 +92,7 @@ function parseItems(content, channel) { async function loadProgramDetails(item) { const url = `https://www.freeview.co.uk/api/program?pid=${item.program_id}&start_time=${item.start_time}&duration=${item.duration}` const data = await axios - .get(url, { - headers: { - 'User-Agent': - 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36' - } - }) + .get(url, { headers: HEADERS }) .then(r => { const programs = r?.data?.data?.programs return Array.isArray(programs) && programs.length > 0 ? programs[0] : {}