Portál AbcLinuxu, 3. května 2025 15:49
Nedávno zde bylo opět nakousnuto téma zálohování obsahu blogů na abclinuxu. Protože už jsem na to kdysi psal script, rozhodl jsem se to trochu učesat a podělit se o mé řešení, aby si každý mohl vytvořit vlastní kopii i s komentáři, čistě pro vlastní potřebu, či případ nějaké neblahé katastrofy.
Script je založen na abclinuxuapi, knihovně, kterou jsem napsal pro externí scrappování zdejšího portálu. Tato knihovna vám umožňuje pracovat v mnoha zdejšími funkcemi poměrně primitivním, ale hlavně strukturovaným způsobem.
Data jsou ukládána jako serializované objekty s backendem v sqlite databázi, pomocí knihovny sqlitedict. To má své nevýhody - nejde s nimi pracovat bez pythonu a formát není úplně nejefektivnější na ukládání a indexování.
Má to také své výhody:
Je to primitivní z hlediska programátora. Prostě dáte objekt do dictionary, commitnete a on už tam zůstane. A když s tím chcete pracovat, tak s tím pracujete, jako kdyby data byla celou dobu pořád v paměti. Nemusíte řešit nějaké normalizace a denormalizace, skládání tabulek a další nepodstatné pitomosti. Prostě sáhnete po objektu blogu a iterujete přes jeho komentáře.
Chcete vidět všechny komentáře, kde někdo někdy zmínil vaše jméno? Žádný otravný databázový COBOL. Prostě projděte přes všechny komentáře a podívejte se do obsahu textů. Jednodušší už to být nemůže. Efektivnější jo, ale to nebylo účelem.
Pro ty komu tenhle přístup nevyhovuje je zde možnost si dataset zkonvertovat do sqlite pomocí scriptu convert_blogtree_to_clean_sqlite.py.
Celé je to napsané nad pythonem dva. Repozitář si prostě naklonujte gitem, nainstalujte závislosti přes
python2 -m pip install --user -r requirements.txt
a můžete vesele stahovat.
./download_blogtree.py -a -f -u /home/bystrousak/Plocha/tests/blogtree.sqlite Estimating number of blogs................. 1 / ~20300 Abíčko neumírá, jen žije jinak. 2 / ~20300 Nový hw - bugy 3 3 / ~20300 Netrapte se 4 / ~20300 Umírá abíčko? (odpověď v textu) 5 / ~20300 Záhadné správanie v Bashi 6 / ~20300 Tablet iGET Smart G81 Black koupit bo ee? ...
Doba běhu je na mé lince něco kolem hodiny.
Moje první programátorská práce byla pro Národní knihovnu, sekci digitalizace. Mimo jiné jsem úzce spolupracoval s lidmi z českého webarchivu (zdravím Rudu, Jardu a Zuzku). Ti se zabývají uchováváním různých digitálních dat pro budoucí generace. Díky nim jsem získal povědomí, že uchovávat data do budoucnosti může být záslužná činnost.
Internet je místo, které se neustále mění. Osobně považuji abclinuxu za svého druhu poklad, u kterého by mi bylo vážně líto, kdyby zmizelo. Původně jsem se stahováním začal, když jsem prováděl analýzu, zda je neregistrovaný uživatel Kvakor pseudonym pro člověka jinak známého jako Shaddack (pravděpodobně jo, linkuje 29 jeho jeho článků na wikipedii). V průběhu jsem si ovšem povšiml titulků různých blogů a začal číst.
Pohled do historie, který se mi takhle naskytl byl fascinující, tak jsem se časem rozhodl sklízet abclinuxu pravidelně, abych ho uchoval pro další generace, kdyby ho náhodou jednoho dne někdo smazal. To dělám už několik let. A protože jediná možnost, jak zajistit skutečnou nesmrtelnost je decentralizace, máte dneska možnost si udělat vlastní sklizeň.
Tiskni
Sdílej:
/blog/SALAM_OLEJKUM/2009/4/vymaz-mozku
Bohužel v roce 2012 kdy jsem dělal první sklizeň už to bylo smazané.
Původně jsem se stahováním začal, když jsem prováděl analýzu, zda je neregistrovaný uživatel Kvakor pseudonym pro člověka jinak známého jako Shaddack (pravděpodobně jo, linkuje 29 jeho jeho článků na wikipedii).To mi moc nesedí (Shaddacka znám osobně, Kvakora ne). Podle mě je Kvakor tento.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.