Script aggiornati per Greasemonkey 4 e altre importanti novità

Chi segue il blog da qualche tempo ormai lo sa, i miei post più seguiti sono quasi tutti dedicati al download di video delle principali emittenti italiane, e non solo, disponibili liberamente sui siti web.

Da diversi anni ho reso disponibili gratuitamente degli script (con annesso server di supporto, per Rai e Mediaset) dedicati ciascuno a un singolo sito web. Qui sotto trovate i link ai vari post, dai quali potete scaricare e installare ciò che vi interessa. 🙂

Firefox e Greasemonkey

In passato ho sempre consigliato a tutti Greasemonkey su Firefox, perché è un componente aggiuntivo libero e open source che si può considerare anche la prima delle estensioni per usare gli user script. Poi è nata Tampermonkey per Chrome, Opera e altri browser e adesso ne esistono pure di ulteriori.

Nel lavoro di ammodernamento precedente all’uscita di Firefox 57 (Quantum), gli autori di Greasemonkey si sono trovati nella condizione di dover aggiornare l’estensione e ne hanno approfittato per fare alcune modifiche non retrocompatibili.

Ne è risultato che i miei script funzionavano bene su Greasemonkey 3, ma erano inefficaci su Greasemonkey 4. Quindi ho suggerito a tutti di passare a Tampermonkey. 😉

Come sempre accade, ho continuato a ricevere lo stesso qualche richiesta in merito a presunti “problemi” da sistemare sullo script, da persone che usavano Greasemonkey nonostante i ripetuti avvisi. Però per il resto è andato tutto abbastanza liscio.

Ad ogni modo ora non è più necessario preoccuparsi, infatti ho aggiornato tutti gli script per renderli funzionanti col nuovo Greasemonkey! 😀

Gli aggiornamenti

Non ho effettuato solo una modifica (per fortuna non troppo impegnativa) in termini di compatibilità garantita con Greasemonkey e Tampermonkey, ma in alcuni casi ci sono state delle modifiche ulteriori. Eccovi un riepilogo:

  • Rai Play: ora il link compare regolarmente, inoltre ho nascosto il fastidioso avviso che chiede all’utente di disattivare il blocco pubblicitario. Bloccare le pubblicità è fondamentale (leggete qui perché).
  • Video Mediaset: ora tutti i link compaiono regolarmente. Ho rimosso il pop-up che compare a chi accede a Mediaset dall’estero. Nella quasi totalità dei casi, chi usa il mio script può vedere i video geoprotetti di Mediaset anche in altri paesi.
  • La7: nella stragrande maggioranza dei casi funzionava già con Greasemonkey 4, ma ho fatto una piccola modifica per sistemare il resto.
  • Infine ho applicato la stessa correzione agli script per RSI e BBC.

Altre informazioni utili

Una cosa che ha confuso alcune persone è che da un po’ di tempo sia Rai che Mediaset richiedono di essere registrati, per vedere molti dei loro video. È così da diversi mesi, eppure pochi se ne sono accorti e ogni tanto qualcuno me lo “segnala”.

Il motivo è semplice: chi usa i miei script non deve registrarsi perché ci pensano loro a mostrare subito il video. Un risparmio di tempo e di privacy, saltando il login e la pubblicità iniziale. 🙂 Nei rari casi in cui un link non sia disponibile o riconoscibile dallo script, può comparire una finestra di login… ma non allarmatevi, è fatto così il sito.

Altra cosa utile da tenere a mente, lo accennavo prima, è che usando il mio script per Video Mediaset potete visualizzare tranquillamente quasi tutti i loro filmati anche dall’estero senza strumenti particolari. 😉 Questo perché i loro video “geo-protetti” sono protetti tanto quanto lo sarebbe un caveau pieno di diamanti, aperto e con un cartello che dice “non entrare”.

Per quanto riguarda invece i video della Rai (se non siete in Italia) o della BBC (se non siete nel Regno Unito) avrete bisogno di un servizio VPN serio. Ne ho parlato approfonditamente nell’articolo Cos’è una VPN e perché è fondamentale usarla per proteggersi. Il post ha dei link per acquistare degli account lifetime scontati… Sennò fate voi e scegliete quella che preferite. 🙂

Infine, vorrei precisare che questi aggiornamenti non riguardano i problemi di qualche giorno fa (sorti attorno al 15 gennaio) per i link che non comparivano sotto ad alcuni video su Rai Play. Quello era un malfunzionamento sul server (già risolto) causato dall’hosting provider. Ne ho parlato nei commenti sotto al post.

Licenza e nuova policy

Volevo infine chiarire una cosa importante sull’uso degli script ed eventuali richieste di assistenza in merito. Dal primo giorno (di oltre 6 anni fa!) gli script sono rilasciati sotto licenza GPL, una licenza libera. Ciò vi garantisce che potete usarli gratis e liberamente per qualsiasi scopo, installarli dove vi pare, condividerli e modificarli a condizione di riportare chi è l’autore e mantenere le modifiche sotto la stessa licenza.

Gli script (e relativo server di supporto) sono e restano a vostra disposizione.

Però è opportuno tenere a mente anche quanto è indicato nella licenza, in merito a eventuali garanzie di funzionamento. Userò la traduzione non ufficiale della GPLv3 per maggiore chiarezza:

Eccetto quando altrimenti stabilito per iscritto, i detentori del copyright e/o le altre parti forniscono il programma “così com’è” senza garanzia di alcun tipo, né espressa né implicita, incluse, ma non limitate a, le garanzie di commerciabilità o di utilizzabilità per un particolare scopo.

Ciò significa, in altri termini, che non devo fornire garanzie di funzionamento costante al 100%, stando sempre al passo con le modifiche ai siti delle varie TV. Né in realtà ho il tempo di farlo… aggiorno quando riesco, essendo tutte ore extra che devo spendere per gli script. 🙂

Non posso altresì dedicare molto tempo a rispondere ai quesiti che arrivano via email o messaggi privati, sennò diventa un impegno gravoso che va ad intaccare il tempo dedicato alla mia professione. Per questo motivo da oggi ho deciso di disattivare la chat della mia pagina Facebook.

Se ci sono dubbi, domande o commenti sugli script ho sempre chiesto agli utenti di usare l’area commenti dei relativi articoli. Per comodità vostra li trovate linkati all’inizio di questo post, quindi commentate pure!

Se 10 persone mi scrivono in privato, devo dare 10 risposte. Se 10 persone usano l’area commenti, la prima riceve la risposta e le altre 9 si trovano già la soluzione pronta senza far fatica. È un vantaggio per tutti! 😉

Come policy generale comunque ho intenzione di dare una mano con gli script a chi ha effettuato una donazione, naturalmente se ho tempo e se riesco. Contando la globalità degli script citati sopra, sono state superate le 60000 (sessantamila) copie installate. Vi lascio trarre qualche conclusione su quanto più tempo libero avrei se per ogni installazione mi fosse stato donato un euro. 😀

Chi usa gli script e non ha intenzione di donare sappia che può continuare a farlo gratuitamente tutte le volte che lo desidera. Semplicemente porti un po’ di pazienza se ogni tanto qualcosa non va. Chi invece ha la necessità di avere consulenze dedicate o script realizzati su misura (tutte attività che richiedono tempo) può chiedermi un preventivo in merito a tutti i servizi che offro.

How to download BBC iPlayer videos and radio programmes

Abstract (Italiano): Scrivo questo articolo in inglese perché (ovviamente) la registrazione dei video della BBC interessa maggiormente le persone che parlano inglese. Se lasciate un commento, gentilmente fatelo in inglese.

Abstract (English): I’m writing this post in English because (obviously) recording BBC videos is mostly of interest for those who speak English. Also, a small note for native speakers, especially British people: I’m Italian and I’m mostly used to write using American spelling. For this reason, the post may contain mistakes or American words which may seem unusual. I’m sorry for that. If you find errors (apart from AE spelling) let me know in the comments.

Update (30 April 2017): Version 4.0 of the script is out, which is mostly rewritten from scratch and leverages youtube-dl instead of ffmpeg. I’ve updated this post accordingly.

Introduction

I already wrote about downloading videos from the BBC and Hulu websites (in Italian), however it was about two years ago. Websites change and so does software, hence the suggested method of using get_flash_videos does not work anymore.

I also wrote a generic article about downloading videos from websites (in Italian, too) that contains many different use cases and examples. One of my readers asked for clarification about recording iPlayer videos, so I tried again myself. I was able to apply some of the techniques of my post, together with a couple of clever tricks to find the maximum quality.

Since the process is a bit involved, I wrote a small software which automates all the steps and tells you how to start the recording immediately. This program is actually a so called user script, i.e. a piece of software that runs directly into your browser.

This article explains how to download and install the script. Then it shows you how to use it and what you need to do to record BBC iPlayer videos. Before we start, you need to be able to trick the BBC website into thinking you are living in the UK. If you are actually living there, skip the next section.

Pretending to be in the UK

The BBC iPlayer service is officially available only in the United Kingdom. The website will check your IP address and refuse access if you are trying to watch content from another country. To fix this problem, you need to use a technique to access the site through a server in the UK.

Usually the best tool for the job is a VPN service. VPNs are used to establish secure connections to private networks over the Internet, but may also be used to avoid geographical restrictions of websites.

There are many different VPN services. Most of them are paid (although cheap), while some are free. Among the best options, you can:

  • use VPNGate by choosing a node in the UK
  • use CyberGhost with free UK servers
  • use VPNOneClick
  • get a cheap lifetime deal for a professional VPN, such as:

Please keep in mind that recently the BBC has started being more aggressive at blocking VPN providers. Always verify if your VPN provider works with the BBC (most of them have free trials available).

CyberGhost is an interesting VPN service with a convenient free tier for Android devices, Windows and OS X. Unfortunately, the free option is not officially available for the operating system everyone should be using, i.e. Linux. I plan to investigate a bit more about this severe limitation.

Luckily, I also wrote a Python script for easily using VPNGate by specifying only the desired country which works perfectly on any Linux distribution, including Ubuntu, Mint, Fedora, OpenSuse and Mageia. You can check it out here.

You may also try VPN OneClick, which lists UK among the servers. Regardless of what VPN service you choose, once it is activated, you are ready to go on and start recording videos from iPlayer.

Script installation

To run the user script in your browser, you need to install an extension that is compatible with Greasemonkey (version 3) scripts. The following are recommended:

Currently the script does not work with Greasemonkey 4 on Firefox 57 or later. Please do not use Greasemonkey 4.

After this step, you can click the following link to open the script page on Greasyfork. On the page that shows up, click on the Install this script button to complete the procedure.

BBC iPlayer video download

You are now ready to start downloading.

Recording videos

The next time you open a video page on iPlayer, you’ll see that the script adds a box under it with some instructions and a command line. The following pictures shows an example with this video.

bbc_download_youtube-dl
Example of the output of the script

The command line displayed in the gray box is a one-liner you can use together with youtube-dl. This is a software used to convert and record video files, which can be installed on any of the common Linux distributions such as Ubuntu. More informations are available on the official website.

Despite its name, it does not work only for YouTube, it works for many other websites as well. My script uses it because it can download DASH streams served through a MPD file easily. The program can download some BBC videos without the need of my script, however the latter:

  • works on many pages where youtube-dl doesn’t recognize the stream URL
  • provides you with converted SRT subtitles on the fly, thanks to its internal converter

Remember that you will still need ffmpeg installed on your system. Check out its official website here.

To start the download:

  • carefully copy the entire content of the gray box (and nothing else)
  • paste it into a terminal window
  • press Enter and wait until the process is over

Keep in mind that this will create a lot of temporary files, but they will get removed automatically at the end.

It is also possible to download the videos on Windows or macOS. On Windows you just need to create a new file called download.bat (with Notepad, or any other editor) in the same directory of youtube-dl.exe and copy-paste the command line into it. After that, you click the bat file and it should start downloading.

However, please note that I do not offer any assistance for Windows or macOS here on the blog. If in doubt, please use Linux, or find an expert to help you with your OS. You can find the installation instructions of youtube-dl by clicking here.

Recording radio programmes

Starting from version 3.2, the script supports radio programmes such as those provided by BBC School Radio. The process is exactly the same as recording a video, including the command line. The files are in M4A format as provided by the BBC (no conversion is performed).

Conclusion

The script I developed allows to automate all the necessary steps required to ensure the highest possible quality during the downloading. In particular, the script does the following:

  • find the configuration of the player for mobile phones
  • get the list of DASH manifests for different bitrates
  • look for the best available bitrate for desktop computers
  • show the command line to the user

Performing the process manually is time consuming, error-prone and tedious if done multiple times. In this way it should be much easier for those who just want to record a couple of videos to watch them with a modern TV, on the train or keep them in a personal library.

Moreover, starting from version 3.0 the script shows you a download link to the original subtitles in TTML format (which is not very widespread). In addition, it performs an automatic conversion to the commonly used SRT format for your convenience.

Happy downloading! 🙂

Did you like the article?

Writing software and tutorials like this takes time. If you found the provided information useful, and you liked the post, you may buy me a coffee by clicking on the button. 🙂 If you do so, please leave a message on the donation page telling me it’s for this script.

Coffee

Guardare e scaricare video da Hulu o da BBC iPlayer anche dall’Italia

Aggiornamento 20/02/2015: le seguenti istruzioni scritte nel 2012 funzionavano anche per BBC iPlayer, cioè il sito principale di video on-demand della più importante emittente britannica. Col passare del tempo quanto scritto qui non è più valido, ma potete leggere il mio nuovo articolo su come scaricare i video da BBC iPlayer. Per quanto riguarda Hulu, al momento sembra che non ci siano aggiornamenti.

Hulu è un sito web molto famoso negli USA con il quale si possono vedere numerosi video di film e serie televisive di network come NBC, Fox e altri. Se volete alcuni esempi: The Simpsons, Law & order, Grey’s Anatomy, Fringe, Bones, ovviamente tutti in inglese e quasi tutti gratuitamente.

Il sito effettua delle restrizioni sugli accessi, ma di recente si è diffuso un metodo pratico per evitare questo tipo di problema. Inoltre oggi ho personalmente sperimentato come usare la stessa soluzione, originariamente pensata per un browser, anche per il download dei video.

Innanzitutto vediamo come vedere i video di Hulu senza essere negli Stati Uniti. Avrete bisogno di Firefox oppure Chrome e vi basterà installare l’estensione Media Hint. Si tratta di un piccolo componente aggiuntivo che usa un proxy per “illudere” Hulu (e alcuni altri siti, come Pandora) che ci troviamo negli USA, anche se non è vero.

Una piccola nota: dato che questa estensione crea alcuni problemi con Firefox Sync, vi consiglio di attivarla e disattivarla a seconda delle necessità, considerando anche il fatto che non occorre neppure riavviare il browser.ho

A questo punto vi spiego come scaricare i video da Hulu. Dopo aver fatto diversi tentativi (ci ho perso ore a verificare che Tor dava più problemi che altro, ad esempio) ho pensato che la cosa migliore è quella di riutilizzare il proxy di Media Hint e farne uso con un programma — rigorosamente open source — per scaricare da Hulu.

Il software in questione è get-flash-videos. Anche se funziona pure su Windows e Mac OS X, le istruzioni che vi do sono per Linux. Adattatele voi per le vostre esigenze e il vostro sistema operativo. Intanto ecco come installare i pacchetti necessari su Ubuntu e derivate:

sudo apt-get install get-flash-videos rtmpdump libdigest-hmac-perl libpacparser1

Il primo pacchetto è quello del programma vero e proprio, l’ultimo pacchetto serve invece per analizzare il proxy di MediaHint, gli altri servono per fare da supporto al plugin per Hulu, che si installa così:

get_flash_videos --add-plugin http://gitorious.org/get-flash-videos-plugins/gfv-plugins/blobs/raw/release/Hulu.pm

Questo termina il processo di installazione. Chi si trova negli USA non deve fare altro e può iniziare a usare il programma, per tutti gli altri bisogna prima impostare il proxy, e dopo richiamare il software, per esempio così:

wget -q -N -O /tmp/default.pac "http://mediahint.com/default.pac"
PRO="`pactester -p /tmp/default.pac -u http://hulu.com | cut -d ' ' -f 2`"
export ALL_PROXY="http://${PRO}"
export all_proxy="$ALL_PROXY"
export HTTP_PROXY="$ALL_PROXY"
export http_proxy="$ALL_PROXY"
get_flash_videos http://www.hulu.com/watch/486999

I primi comandi prendono l’indirizzo del proxy di Media Hint, poi i successivi lo impostano e l’ultimo avvia il download del video.

Se desiderate fare “un passo in più” vi potete salvare uno script con i comandi, se volete potete copiare quello che mi sono fatto io.

Maggiori informazioni sull’uso del software le potete trovare nella documentazione ufficiale. Buon download!

Aggiornamento 13/06/2013: ho cambiato le istruzioni, ora con un vero parser di file PAC non dovrebbero più esserci problemi legati al fatto che MediaHint cambia spesso i proxy!