tubbadu

joined 2 years ago
[–] tubbadu@lemmy.kde.social 42 points 1 year ago (1 children)

Cryptosiblings

[–] tubbadu@lemmy.kde.social 49 points 1 year ago (10 children)

Uhm, cool I guess. Why should we use this? Does it have any advantage over classical displays?

[–] tubbadu@lemmy.kde.social 55 points 1 year ago (1 children)

Go to settings to activate KDE

[–] tubbadu@lemmy.kde.social -1 points 1 year ago (1 children)

Why only in the US? (I didn't read the article)

[–] tubbadu@lemmy.kde.social 1 points 1 year ago (1 children)

uhm that's strange, I just tried executing it on your link and it worked. have you waited at least 5 seconds after running the script?

[–] tubbadu@lemmy.kde.social 0 points 1 year ago

They also are very good with olives and potatoes

[–] tubbadu@lemmy.kde.social 7 points 1 year ago

Ugly bikes ftw!

[–] tubbadu@lemmy.kde.social 1 points 1 year ago (3 children)

hi, sorry for the late reply! I finally wrote this nodejs script:

const puppeteer = require('puppeteer');

// This is where we'll put the code to get around the tests.



function findPlaylistUrl(networkUrls) {
  for (const url of networkUrls) {
    if (url.startsWith('https://vixcloud.co/playlist')) {
      return url;
    }
  }
  return ''; // Return an empty string if no matching URL is found
}

(async () => {
  // Check if URL argument is provided
  if (process.argv.length <= 2) {
    console.error('Usage: node get_network_urls.js <URL>');
    process.exit(1);
  }

  const url = process.argv[2];

  // Launch a headless browser
  const browser = await puppeteer.launch({ headless: 'true' });
  const page = await browser.newPage();

  // Enable request interception
  await page.setRequestInterception(true);

  // Capture network requests
  const networkUrls = [];
  page.on('request', (request) => {
    networkUrls.push(request.url());
    request.continue();
  });

  // Navigate to the URL
  await page.goto(url);

  // Wait for a while to capture network requests (adjust as needed)
  await page.waitForTimeout(5000);

  // Print the captured network URLs
  console.log(findPlaylistUrl(networkUrls));
    
  // Close the browser
  await browser.close();
})();

the first argument passed to the script is the url of the webpage. The script uses the puppeteer module to "fake" a browser, in order to receive all the network calls and so on, and then will search through them for the m3u8 playlist. It is very specific and only works on this website, but it can be easily adapted for other websites as well

[–] tubbadu@lemmy.kde.social 14 points 1 year ago (1 children)

Can you tell us more about this?

[–] tubbadu@lemmy.kde.social 3 points 1 year ago (1 children)

This is true for literally every selfhosted app

[–] tubbadu@lemmy.kde.social 4 points 1 year ago (5 children)

Setting up a server just for this is clearly overkill, but if you already have a homeserver it would be great to be able to deploy the backend. Sadly there is no such thing currently

[–] tubbadu@lemmy.kde.social 3 points 1 year ago (7 children)

Could be self hosted

view more: ‹ prev next ›