Klávesové zkratky na tomto webu - rozšířené Na obsah stránky

Translate to English… Ins Deutsche übersetzen…

Jak zazálohovat všechny své twíty

Pokud máte dojem, že ty 140 znakové kravinky, co píšete na Twitter, je nutné zálohovat pro příští generace, ať už z důvodu, že Twitter má občas výpadky doprovázené ztrátou dat, nebo vám někdo může účet ukrást a smazat, nebo se blížíte k limitu 3200 štěbetnutí, po kterém se (prý) nejstarší kusy odmazávají, nebo prostě chcete mít vše na disku kvůli lepšímu vyhledávání, je tento článek pro vás.

Protože jsme na blogu o PHP, nebudu zde popisovat online služby určené k zálohování, ale rovnou vypustím z klávesnice kus kvalitního objektového kódu ;)

Nejprve si stáhněte knihovničku Twitter for PHP (verzi 1.2) od stejnojmenného autora s autorem blogu. A pak si vytvořte zálohovač twitter-backup.php:

<?php
set_time_limit(0);

require 'twitter.class.php';

$twitter = new Twitter('davidgrudl', '......'); // zde dejte své přihlašovací údaje

// naráz lze načíst maximálně 200 twittů, tož budeme stránkovat
$page = 1;
do {
        try {
                $channel = $twitter->load(Twitter::ME, 200, $page);
                if (empty($channel->status)) { // prázdný výstup? narazili jsme na konec
                        break;
                }
                file_put_contents("twitter-backup.$page.xml", $channel->asXml());
                echo "Uložena stránka č.$page<br>";
                $page++;

        } catch (TwitterException $e) {
                echo 'Error: ', $e->getMessage();
                exit;
        }
} while (TRUE);

Po spuštění se vytvoří soubory twitter-backup.1.xml, twitter-backup.2.xml atd., podle toho, jak jste aktivní štěbetal. XML obsahuje skutečně vše, včetně informací, na koho zpráva reaguje, z jakého zařízení byla poslána nebo jaké máte barvičky v profilu.

Komentáře RSS 2.0 komentářů » přidat

#1 marek nový

OT: zabavne je umistit kursor do prostoru kodu, nechat ho rozvinout a posunout se uplne k pravemu okraji ;)

Posláno 13. 9. 2009 v 0.49 | Odpovědět

#2 v6ak http://v6ak.profitux.cz/ nový

} catch (Exception $e) {
        break; // další stránka už není
}

Co to je? Myslím to catch(Exception $e).

Posláno 13. 9. 2009 v 9.12 | Odpovědět
Na komentář reagoval [5] David Grudl
avatar

#3 Keff http://blog.tomaskafka.com nový

Ahoj, všem kterým kód vytvoří hromadu xml souborů se stejným obsahem sděluju, že nesmí udělat stejnou chybu jako já, ale musí si stáhnout latest verzi Twitter for PHP ze SVN – ve verzi 1.0 odkazované z článku je metoda load jen s jedním parametrem.

Posláno 13. 9. 2009 ve 14.30 | Odpovědět
Na komentář reagoval [4] David Grudl
avatar

#4 David Grudl http://davidgrudl.com nový

#3 Keff: ajaj, pardon, opraveno

Posláno 13. 9. 2009 v 15.23 | Odpovědět
avatar

#5 David Grudl http://davidgrudl.com nový

#2 v6ak: to měla být úplně triviální knihovna a ukázka :-)) Ale dobře, ukecali jste mě, udělal jsem tam lepší error-handling a článek (i Twitter for PHP) aktualizoval.

Posláno 13. 9. 2009 v 16.52 | Odpovědět
avatar

#6 Keff http://blog.tomaskafka.com nový

Ahoj Davide, díky za skript i za opravu.

Upravil jsem backup script aby zálohoval do jednoho souboru a doplnil dekódování zkrácených URL (neboť jsem nerad když relevantnost mých dat závisí na přechodných a chybových třetích stranách), výsledek lze stáhnout na http://blog.tomaskafka.com/…url-decoding – s disclaimerem Works on my machine :)).

Posláno 13. 9. 2009 v 17.00 | Odpovědět
Na komentář reagoval [8] Keff
avatar

#7 Roman http://www.c64.sk nový

Toto sa mi zíde. Klientka aktívne používa twitter a nebude na zahodenie tento obsah prásknuť priamo na nejakú zo stránok ako archív, keďže každý content je dobrý. Ešte by sa možno zišlo si k tomu prirobiť prekladač skracovačov adries aby nebol archív závislý od „pominuteľnosti“ daných služieb.

Posláno 15. 9. 2009 v 11.38 | Odpovědět
Na komentář reagoval [8] Keff
avatar

#8 Keff keff85@gmail.com nový

#7 Roman: viz #6 Keff: :))

Posláno 15. 9. 2009 v 17.15 | Odpovědět
Na komentář reagoval [9] Roman
avatar

#9 Roman http://www.c64.sk nový

#8 Keff: Sakra, len som to preletel bez toho, že by som si to poriadne prečítal. Dík. Pozriem na to zajtra. (resp. dnes)

Posláno 16. 9. 2009 v 1.10 | Odpovědět

Zanechat komentář

  • na jiné komentáře odkazujte zápisem např. [2]
  • vaše IP bude zaznamenána a zobrazena
  • můžete použít Texy! syntaxi. HTML značky nejsou povolené. Příklad syntaxe: "text odkazu":odkaz, **tučně**, *kurzíva*, `code`
  • můžeme si tykat
  • diskuse mohou být řešeny metodou Indiana Jones
Text komentáře
Kontakt (povinné)

(maskuje se)




Výtah na začátek článku na první komentář

Názory čtenářů v diskusích nejsou názory provozovatele webu, a ten za jejich obsah neodpovídá.

phpFashion © 2004, 2010 David Grudlo webu

Pokud není uvedeno jinak, podléhá obsah těchto stránek licenci Creative Commons BY-NC-ND Creative Commons License BY-NC-ND

Ukázky zdrojových kódů smíte používat s uvedením autora a URL tohoto webu bez dalších omezení.