Hvordan trækker man et link til seneste TV-Avis på DRTV?

    • President_Pyrus@feddit.dk
      link
      fedilink
      arrow-up
      4
      ·
      2 months ago

      Nu har jeg lige været inde i inspect element, og kan se at hvert felt med en TV-avis er en class for sig, hvor den nyeste ender med “__episode–active”. Kunne man ikke lave et script der tjekker efter denne, måske med følgende fremgangsmåde:

      Find klassen "d1-drtv-episode col col-phone-24 col-phablet-12 col-laptop-8 col-desktopWide-6 d1-drtv__episode d1-drtv__episode--active"
      Kopier titel fra klassen "d1-drtv-episode-title-and-details__contextual-title"
      Kopier dato for udsendelsen fra klassen "d1-drtv-episode-title-and-details__contextual-title-extra-details"
      Linket kræver lidt tilpasning, da det ikke umiddelbart fremgår, men i klassen "d1-drtv-episode-title-and-details d1-drtv-episode-description__title-and-details" indgår et link, hvor "episode" skal erstattes med "se" for at komme til videoen. Det burde være muligt at trylle med det
      Tjek med det sidst downloadede afsnit, om dato/tid strengen fra "d1-drtv-episode-title-and-details__contextual-title-extra-details" er den samme. Hvis det er tilfældet er der ikke kommet et nyt afsnit, og så skal vi stoppe.
         Ellers kan vi downloade ved hjælp af fx yt-dlp.
      

      Det er så en fremgangsmåde der kræver noget webscraping, så det er ikke sikkert at det altid vil virke. Men jeg tror bestemt at det er muligt at implementere. Jeg gjorde noget lignende da jeg under OL lavede daglige tråde inde på !sport@feddit.dk. Der webscrapede jeg TV2’s tvtid for at finde de relevante programmer for en given dag. Jeg mener at jeg brugte pythonpakken BeutifulSoup, som kan hjælpe med at parse html. Du kan sikkert på ChatGPT til at hjælpe med at skrive scriptet.

    • dolle@feddit.dk
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      2 months ago

      Jeg sidder også i dag og forsøger at downloade indhold fra DRTV med yt-dlp og kan desværre ikke få det til at virke.

      Edit: Så lykkedes det! Jeg brugte yt-dlp --cookies-from-browser firefox, men fik også 404 da jeg bare pastede URL’en fra browserens adressebar ind. Til gengæld lykkedes det da jeg pausede programmet, åbnede developer tools og derefter så hvilke .mp4 strømme der blev hentet. Da jeg kopierede den med den den højeste bitrate virkede det sgu!

      • farsinuce@feddit.dkOP
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        2 months ago

        Sådan, Dolle!

        Jeg prøver at replikere, men er det ikke en unik URL, vi ser i dev tools, som ændrer sig for hver udsendelse?

        Så kan det vel ikke automatiseres, eller er der noget, jeg overser?

        Edit: Del evt. dit fund i førnævnte GitHub issue for internet goodwill. Merged / closed

        Edit: Du får en URL til mp4 - jeg ser kun .ts links på TV-avisen. VideoDownloadHelper vil gerne lege med (vælger en .m3u8 stream), men yt-dlp giver HTTP Error 403 uanset. Nørder videre…

        • dolle@feddit.dk
          link
          fedilink
          arrow-up
          2
          ·
          2 months ago

          Der er helt sikkert en måde at automatisere det på, men jeg ved ikke hvor svært det er. Hvis man er heldig kan man ekstrahere URL’en fra HTML’en, men der er nok også en vis risiko for at den sammensættes af noget JavaScript.

    • President_Pyrus@feddit.dk
      link
      fedilink
      arrow-up
      3
      ·
      2 months ago

      Jeg tror også du får problemer med yt-dlp. DR har lige implementeret at man skal være logget ind for at se gamle programmer, inklusiv udsendelser af tv avisen. Det bliver nok sværere at downloade når man skal logge ind.

        • President_Pyrus@feddit.dk
          link
          fedilink
          arrow-up
          6
          ·
          2 months ago

          Nu får jeg lige pludselig lyst til at lave småkager, som jeg kan lange over disken herhjemme… Er det for tidligt at lave diverse julesmåkager?

            • President_Pyrus@feddit.dk
              link
              fedilink
              arrow-up
              6
              ·
              2 months ago

              Selvom de måske lidt har formen, så tror jeg alligevel at pebernødder er for små til at kunne gå for at ligne et græskar…

        • farsinuce@feddit.dkOP
          link
          fedilink
          arrow-up
          5
          ·
          edit-2
          2 months ago

          Tusind tak for forslagene. Har nu et script, der kan finde seneste TV-avis… men desværre virker yt-dlp ikke længere med DRTV pga. det ny login-halløj. Forsøgte at parse min browser cookie uden held (disclaimer: jeg ved ikke, hvad jeg laver 🙃)

          Status: Nær ved og næsten.


          Prøver jeg at isolere yt-dlp, får jeg samme HTTP 404 error som dem her: https://github.com/yt-dlp/yt-dlp/issues/11137


          Edit: Forsøgte også at hente min cookie ned lokalt, men det hjalp ikke. Må være yt-dlp, der ikke vil lege med DR’s ny login system.