Մասնակից:Teak/ձեռնարկ

Վիքիդարանից՝ ազատ գրադարանից

Տեսածրված գիրքը djvu ֆորմատի վերածելը[խմբագրել]

Սովորաբար գրքի սև-սպիտակ տեսածրված էջերը հիշում եմ առանձին tif պատկերի ֆորմատով։ Տեսածրելիս երկու էջը որպես մեկ պատկեր է սովորաբար հիշվում, այնուհետև այս պատկերները բաժանվում են երկու առանձին էջերի պատկերների․ այս գործողության համար կան մի քանի գործիքներ, օրինակ՝ unpaper, Scan Tailor, ScanKromsator։ Ցավոք սրտի սրանցից և ոչ մեկը կատարյալ չի․ ես մեծ մասամբ օգտագործել եմ ScanKromsator (ցավոք սրտի ծրագիրը աշխատում է միայն Windows ՕՀ-ի վրա)։ Էջերի պատկերները անվանում եմ ej001.jpg, ej002.jpg և այլն

Գրքի կազմը տեսածրում եմ գունավոր ռեժիմով և հիշում եմ kazm.jpg անվանմամբ։

Այնուհետև կազմի էջը վերածում եմ djvu ֆորմատի։ Սրա համար օգտագործվում է djvulibre փաթեթի գործիքները (command line)։

Այնուհետև կազմի պատկերը վերածում եմ djvu ֆորմատի հետևյալ հրահանգով (c44 ծրագիրը գունավոր պատկերների ծածկագրելու համար է)

c44 kazm.JPG girq.djvu

Գրքի բուն էջերը, որոնք հիշվել են համարակալված պատկերների անվանմամբ, հերթով վերածվում են djvu ֆորմատի, այնուհետև մեկ առ մեկ փակցվում նույն girq.djvu ֆայլին։ Քանի որ էջերի քանակը սովորաբար շատ է, և ձեռքով սա անելը տառապալի կլինի, ապա սա կարելի է անել պարզ սկրիպտի օգնությամբ․

N=324 #the number of pages
for n in `seq 1 N` #specify the range for the variable n
do
 z=`printf %03i $n` #used to make the file names into 3,4, 5...-digit numbers, e.g. 12->0012

 cjb2 -clean ej$z.tif $z.djvu     #convert b/w tiff images to DjVu
 djvm -i girq.djvu $z.djvu        #inserting pages into beforehand created DjVu file

done

Սկրիպտը կիրառելու համար հիշեք ելակոդը tool.sh ֆայլի անվանմամբ (փոխելով առաջին տողում նշված թիվը ձեր գրքի էջերի քանակով) և տվեք հետևյալ հրահանգը

bash tool.sh

Որոշ ժամանակ անց ձեր girq.djvu ֆայլը կպարունակի բնօրինակ գրքի բոլոր տեսածրված էջերը։

Տառաճանաչում և տեքստի վերբեռնում[խմբագրել]

Տառաճանաչելիս էջերը անհրաժեշտ է հիշել որպես առանձին ֆայլեր txt ֆորմատով (ej001.txt, ej002.txt և այլն)։ Քանի որ վիքիում նոր պարբերության սկսում է նախորդ պարբերության ավարտից մեկ դատարկ տող հետո, ապա անհրաժեշտ է տառաճանաչված տեքստում բոլոր տողավերձերը փոխարինել կրկնակի տողավերջով։ Տեքստը pywikipedia բոտի pagefromfile սպրիպտով վերբեռնելու համար պետք է յուրաքանչյուր էջում ավելացնել վիքիում այդ էջի անվանումը, ինչպես նաև տեքստի ավարտի որոշ վերջանիշ։ Այս ամենը կարելի է անել հետևյալ սկրիպտի օգնությամբ

N=324 #the number of pages
for n in `seq 1 N`
do
 z=`printf %03i $n` #used to make the file names into 3-digit numbers, e.g. 012
  
 rpl -e '\n' '\n\n' ej$z.txt       #replacing the page return by 2 page returns for identation in wiki
 
 echo -e "\n\nsssԷջ:գործի_վիքիանվանում.djvu/$n eee\n\nyyyy" >> ej$z.txt  #adding a line at the end of text files, to make the bot upload the text to that article

 python /bot_folder/pagefromfile.py -force -file:/text_folder/ej$z.txt -start: -end:yyyy -titlestart:sss -titleend:eee -notitle  #uploading the text into the wiki of the bot (as specified in the user-config.py)

done