// goto https://www.youtube.com/feed/channels // set to a-z and scroll all the way down until loading ends // run in terminal: arr = Array.from(document.querySelectorAll('ytd-channel-renderer')) data = [] arr.forEach((item, index) => { data.push({ title: item.querySelector('.ytd-channel-name').innerText, handle: item.querySelector('yt-formatted-string#subscribers').innerText, subs: item.querySelector('#video-count').innerText, description: item.querySelector('#description').innerText, link: 'https://youtube.com' + item.querySelector('a#main-link').href }) }) console.log(data) // side-note: why are YouTube using IDs? I thought that was inefficient...