Andrea Beggi

"I'm brave but I'm chicken shit"

Esportare e salvare un account FriendFeed usando Windows

Grazie a un paio di script PHP è possibile esportare completamente un account FriendFeed. Il processo crea un file HTML con tutti i post, completi di commenti e media (immagini, suoni, documenti), e permette di archiviare comodamente i propri contenuti e di consultarli con un browser. L’autore è Claudio Cicali, e questa è la relativa discussione su FF.

Questa guida serve a chi non ha accesso ad un server linux e vuole utilizzare Windows, ed è sufficientemente semplice per poter essere seguita anche da chi non è un tecnico. Sembra lunga perché ho dettagliato molto, ma si tratta di poche operazioni.

Il primo passo è scaricare XAMPP, una versione portatile di Apache/PHP/MySQL. La versione da prelevare è quella “Installer”, e si trova qui. L’installazione è facilissima: basta lanciare l’eseguibile scaricato e accettare tutte le scelte predefinite.

Al termine dell’installazione troveremo una cartella c:\xampp, per adesso lasciamola stare. Procuriamoci ora gli script che ci serviranno, che si scaricano dallo spazio Github di Claudio Cicali. Sulla destra c’è un pulsante grigio “Download”, clicchiamolo e poi scegliamo “download .zip”. Scarichiamo lo zip, che contiene tre file, e scompattiamoli nella cartella c:\xampp\php. In particolare assicuriamoci che c:\xampp\php contenga ffexp.php e ffexp2html.php.

Adesso abbiamo bisogno di abilitare una funzione di PHP che si chiama cURL. E’ molto semplice: si tratta di togliere un “;” da una riga. Andiamo con ordine: apriamo il file php.ini che sta in c:\xampp\php utilizzando WordPad (si trova in Tutti i programmi –> Accessori). Una volta aperto php.ini, cerchiamo la riga

;extension=php_curl.dll

che si trova nella sezione “Dynamic Extensions”, un po’ prima della metà del file. Tutto quello che dobbiamo fare è cancellare quel punto e virgola all’inizio della riga (solo quello) e salvare il file.

Sempre tramite WordPad, dobbiamo modificare il file ffexp.php. Nella sezione “Begin of configuration options” individuiamo la riga

$username = "";

e modifichiamola inserendo il nostro username FriendFeed. Per me diventa: $username = “abeggi”;. Se il nostro feed è privato (cioè abbiamo il “lucchetto”) modifichiamo anche la riga

$remote_key = "";

Possiamo prelevare la nostra remote key all’url: http://friendfeed.com/account/api. Della privacy parliamo dopo.

Già che ci siamo, modifichiamo anche ffexp2html.php, inserendo anche qui il nostro nickname nella riga

$username = "";

In tutti i casi le virgolette vanno lasciate e sono necessarie.

A questo punto siamo pronti per lanciare il processo di esportazione. Lanciamo un Prompt dei comandi, da Tutti i programmi –> Accessori, e portiamoci nella cartella giusta:

cd \xampp\php

adesso lanciamo il comando:

php ffexp.php my_ff_stream.json

Attenzione: il processo può impiegare anche alcune ore, dipende dalla velocità della connessione e dalla quantità di dati da esportare. Ogni tanto appariranno dei messaggi più o meno rassicuranti sulla pagina che si sta recuperando e sui media che si sta scaricando. Andate a farvi un giretto, schiacciate un pisolino o guardate un film.

Al termine del lavoro avremo un file c:\xampp\php\my_ff_stream.json e troveremo una cartella c:\xampp\php\ff_media\username con tutti i media scaricati.

L’ultimo passo è convertire il file json in un file html leggibile da qualunque browser, tramite il comando:

php ffexp2html.php my_ff_stream.json > ff_out.html

Attendiamo che lo script finisca il suo lavoro e crei il file ff_out.html.

Abbiamo finito e possiamo goderci il frutto del nostro lavoro; con un doppio clic su ff_out.html e un po’ di pazienza (è di grandi dimensioni) dovremmo vedere una cosa simile a questa:

Le immagini ci sono, dei filmati YouTube c’è solo il link e non l’anteprima. I file mp3 ci sono, ma non c’è il player integrato. I commenti e i like ci sono e sono cliccabili.

Per archiviare il tutto è sufficiente copiare il file ff_out.html e la cartella ff_media da qualche parte: basta che stiano nello stesso posto e potremo sempre consultare il nostro stream.

Alcune considerazioni sulla privacy: se il vostro “feed” è pubblico, chiunque lo può scaricare, e allo stesso modo voi potete scaricare qualunque feed non “lucchettato”. Se è protetto può essere scaricato solo da chi è in possesso della remote key. In ogni caso i DM (i messaggi privati tra utenti) non vengono mai scaricati, quindi quelli li dovrete salvare con altri mezzi. Utilizzando i parametri “filter/direct” e “direct” nei due file dovrebbe essere possibile salvare anche i DM. Mancano anche i commenti che abbiamo fatto su post di altri utenti, naturalmente. Per scaricare una stanza pubblica è sufficiente inserire il nome della stanza (nickname) al posto dello username personale.


Pubblicato

in

da

Commenti

4 risposte a “Esportare e salvare un account FriendFeed usando Windows”

  1. […] con "il meglio della settimana": jQuery templating tutorial MVC in PHP: un piccolo tutorial Salva tutto il tuo FriendFeed sul tuo pc Like Button, Facebook cambia le […]

  2. Avatar vecchigiovine

    e se io volessi esportare solo i thread in cui ho commentato e/o messo like? secondo te è possibile?

  3. Avatar Andrea

    Non saprei, penso dipenda dal codice. Forse chi lo ha sviluppato te lo sa dire…

  4. Avatar Smeerch

    Ma può essere che, non togliendo il “;” dalla riga “extension=php_curl.dll”, l’esecuzione dell’operazione vada in loop e continui a fetchare le pagine all’infinito? 🙁