Како се пронаћи на блогу Б92

Могући поступак проналажења сопствених чланака на блогу Б92

На блогу Б92 много се пише, било да сте аутор или само невини коментатор. Већина аутора све што је написала помно чува у некој датотеци. Међутим, има и оних са вишегодишњим ауторско-коментаторским стажом који су били мање вредни. Установе да немају свој примерак текстова или коментара чији се број (у зависности од списатељске плодности) мери десетинама или, пак, стотинама. Шта да ради такав аутор? Овде ћемо покушати да дамо једно решење таквог „проблема“.

Колико је нама познато, база података која „погони“ блог Б92 није доступна ширем кругу корисника. Да јесте, вероватно би се могло саставити неколико SQL упита и добити жељени резултати. Међутим, ово није случај и зато јунак наше приче мора да се снађе на другачији начин. Могао би да покуша да на неки начин „скине“ цео садржај блога Б92 па га на миру обрађује у удобности дома свог.

Ово је могуће урадити на више начина, користећи неку команду као што је curl или wget. Све што треба јесте задати одговарајуће улазне параметре и пустити команду да ради неколико дана. Међутим, ове две команде нису се најбоље показале. И поред командне „кобасице“ као што је:

wget --recursive --no-clobber --page-requisites --html-extension --convert-links --restrict-file-names=nocontrol --domains b92.net --no-parent blog.b92.net/

низтовар (download) би се прекидао после неколико сати на чудним местима (један линк који је упорно изазивао проблеме садржи иницијал и презиме председника српске владе у претходном мандату, али нећемо бити баш толико сујеверни).

Програм који се показао потпуно дораслим овом задатку јесте Httrack. Бесплатан је и поуздан, али његова конфигурација можда и није најједноставнија за просечног корисника. Ово су параметри који су задати програму како би (после 6 дана не-баш-брзог скидања) свукао само HTML датотеке које чине блог Б92:

webhttrack -q -%i -iC1 blog.b92.net -O "/tmp/blog92" -p7 -N0 -s2 -o -x -p7 -D -a -K0 -c8 -%k -A25000 -#L300000 -F "Mozilla/4.5 (compatible; HTTrack 3.0x; Windows 98)" -*.gif -*.pdf -*.jpg -*.jpeg -*.css -*.js -*.png -*.xml -%s -%u

По мени, најважније је навести довољно велик број у команди -#L (у нашем случају 300000). Тај број одређује колики је највећи број који у једном тренутку чекају да буду обрађени. Подразумевана вредност је 100000, што се показало недовољним у случају блога. Такође је важно поменути да нам није потребна ниједна друга врста датотека осим HTML - зато се у команди налази низ -*.gif -*.pdf -*.jpg -*.jpeg -*.css -*.js -*.png -*.xml -*.doc - не желимо слике, Јава скрипт и сличне врсте датотека. За оне који се одлуче да користе овај програм опсежна документација доступна је на веб страници самог програма. Наравно, најважније је да у директоријуму /tmp има довољно слободног простора.

Претпоставимо да смо после неколико дана скинули све HTML датотеке које чине блог Б92. Према стању од 13. маја 2016, укупна величина свих датотека је нешто преко 21 гигабајта.

Од овог тренутка остаје нам лакши део посла: треба наћи датотеке у којима се помиње име или надимак аутора чије прилоге тражимо. Није нам важно да ли је аутор написао прилог за блог или коментар - битно нам је само да нађемо датотеке. Овај корак је потребан како не бисмо претраживали свих 21 гигабајт података. На Линуксу или било којем UNIX оперативном систему задатак можемо остварити задавањем једноставне команде (Черевићан је љубазно дозволио да његов надимак узмемо за пример):

$ cd /директоријум/где/су/HTML/датотеке/блога
$ grep -lr Черевићан ./text/* | while read -r x; do echo $(pwd)/$x >> /var/tmp/kandidati.txt ; done

Знак “$” није потребно уносити. Њиме се уобичајено означава одзив оперативног система.

Сада у датотеци /var/tmp/kandidati.txt имамо све HTML датотеке у којима се појављује Черевићан, било као аутор блога, било као коментатор туђих блогова. Датотеке су излистане по једна у сваком реду. Сада ћемо из сваке од ових датотека издвојити само Черевићанове прилоге, уз најједноставније форматирање (датум и линк на блогу Б92):

================================================================================
Blog: http://blog.b92.net/text/1001/пиш-одниш/index.html
Date: /
  04.10.2007. u 08:39
--------------------------------------------------
састав на тему. . . . запетљану уме да насмеје ...
[изостављено]
--------------------------------------------------
Черевићан 12:23 04.10.2007 Re: pis od nis текст блогами ...
--------------------------------------------------

Ово издвајање, захтева писање посебног програма који се може ухватити укоштац са HTML елементима који се налазе у страницама блога Б92. Једно од могућих решења био би програм написан у језику Питон, верзија 2 (Python). Поменути језик одликују модуларност, доступност у разним оперативним системима и добра подршка обради стрингова. Програм који је направио датотеку приказану нешто више доступан је овде. Кликом на линк биће вам понуђено да изворни кôд једноставно снимите као обичну текстуалну датотеку. Затим јој доделите дозволу извршавања (chmod u+x b92author.py) Извршавање програма је једноставно:

b92author.py -i /var/tmp/kandidati.txt -o /var/tmp/mojepisanije.txt -a Черевићан

По окончању извршавања програма, сви чланци назначеног аутора биће сачувани у датотеци /var/tmp/mojepisanije.txt, која се може отворити било којим програмом за обраду текста. Навођење опција -i и је обавезно. Ако се опција изостави, пронађени текст биће сачуван у датотеци out.txt у текућем директоријуму.

Тако би изгледао један приступ преузимању садржаја блога Б92 и његовог претраживања. Наравно, читаоци су више него добродошли да предложе другачије начине скидања садржаја блога Б92. Све примедбе и предлози могу се оставити у одељку за коментаре непосредно испод овог текста (регистрација на сајту Disqus није потребна).


Коментаре послужује Disqus

<< Колач са сувим воћем