На днях увидел в сети упоминание аудиокниги Дмитрия Быкова "ЖД". Захотелось прочитать черным по белому, а то все эти "аудио" немного напрягают. Полез в старый добрый Альдебаран - фиг, нет возможности скачать! Попробовал всякие злые поисковые системы - все пути ведут в тот же картель - либо ты читаешь постранично он-лайн (скачать текст не получается!), либо топаешь в онлайн магазин и покупаешь книжку за электронные баксы.
И тогда (после простых манипуляций в шелле) у меня родился скрипт.
И тогда (после простых манипуляций в шелле) у меня родился скрипт.
Использован один из стандартных шеллов - tcsh (просто я его люблю)
1. вводим параметры в нижеприведенный скрипт
#!/usr/bin/tcsh
setenv BOOK1 'http://www.litportal.ru/genre40/author2877/read/page'
# адрес странички взят из браузера при поиске книги на litportal
setenv BOOK2 'book14254.html'
# адрес книги - взят там же
setenv HACKS '--referer=http://www.litportal.ru -q -U Mozilla -O -'
echo '<HTML> <HEAD></HEAD> <BODY>' > book.html
foreach p (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19)
# количество элементов зависит от числа страниц - см. титульную страницу книги
wget `wget ${BOOK1}/$p/$BOOK2 $HACKS | grep getpage | sed '{s/.*src=.//;s/. .*//}'` $HACKS | grep getpage | sed '{s/.*href=.//;s/.;.*//}' > l.lnk
wget -i l.lnk $HACKS > p.html
rm -f l.lnk
perl -pi -e 's/<span class=h>..?<\/span>//g' p.html
grep 's += ' p.html >> book.html
rm -f p.html
end
perl -pi -e 's#\\"##g;' book.html
perl -pi -e 's#xmlns:xlink=http://www.w3.org/1999/xlink xmlns:fb=http://www.gribuser.ru/xml/fictionbook/2.0##g;' book.html
perl -pi -e 's#^s \+= .##;s#.;$##' book.html
echo '</BODY></HTML>' >> book.html
2. Завершив конфигурации запустим скрипт в пустой директории - получим готовый html файл с книгой.
Работает со всеми стандартными юниксами (желательно не использовать root) - главное - наличие tcsh, wget, perl и подключения к сети. Про такие вещи как sed и grep я молчу - наверное в самом жалком embedded линуксе и то они имеются.
При разработке не упал ни один виндовс.
Публикуется как "тестирование уязвимости" :-)
1. вводим параметры в нижеприведенный скрипт
#!/usr/bin/tcsh
setenv BOOK1 'http://www.litportal.ru/genre40/author2877/read/page'
# адрес странички взят из браузера при поиске книги на litportal
setenv BOOK2 'book14254.html'
# адрес книги - взят там же
setenv HACKS '--referer=http://www.litportal.ru -q -U Mozilla -O -'
echo '<HTML> <HEAD></HEAD> <BODY>' > book.html
foreach p (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19)
# количество элементов зависит от числа страниц - см. титульную страницу книги
wget `wget ${BOOK1}/$p/$BOOK2 $HACKS | grep getpage | sed '{s/.*src=.//;s/. .*//}'` $HACKS | grep getpage | sed '{s/.*href=.//;s/.;.*//}' > l.lnk
wget -i l.lnk $HACKS > p.html
rm -f l.lnk
perl -pi -e 's/<span class=h>..?<\/span>//g' p.html
grep 's += ' p.html >> book.html
rm -f p.html
end
perl -pi -e 's#\\"##g;' book.html
perl -pi -e 's#xmlns:xlink=http://www.w3.org/1999/xlink xmlns:fb=http://www.gribuser.ru/xml/fictionbook/2.0##g;' book.html
perl -pi -e 's#^s \+= .##;s#.;$##' book.html
echo '</BODY></HTML>' >> book.html
2. Завершив конфигурации запустим скрипт в пустой директории - получим готовый html файл с книгой.
Работает со всеми стандартными юниксами (желательно не использовать root) - главное - наличие tcsh, wget, perl и подключения к сети. Про такие вещи как sed и grep я молчу - наверное в самом жалком embedded линуксе и то они имеются.
При разработке не упал ни один виндовс.
Публикуется как "тестирование уязвимости" :-)
(no subject)
Date: 2008-04-09 11:54 am (UTC)(no subject)
Date: 2008-04-09 01:02 pm (UTC)(no subject)
Date: 2008-04-09 01:09 pm (UTC)И если речь зашла о правовых аспектах :-)
Date: 2008-04-09 01:05 pm (UTC)12 декабря в России - день Конституции.
Слово это для русского человека загадочное и непонятное. Оттого - крамольное.
Часто - ругательное. А иногда и смертельно опасное.
Людям прозорливым категорически не рекомендуемое к употреблению...
Для россиян слова "Конституция" и "конституционные права граждан" - табу.
Государством же вспоминать о них чаще, чем раз в году, не принято.
Как о тягостной повинности посещать могилу далёкого предка.
"Приличия для". Но громко. Чтобы все знали о визите на кладбище.
Если Вы случайно оказались в России или (не дай Бог) в ней живёте, помните.
В "Королевстве кривых зеркал", как в любой стране с искажённой
моралью, действуют особые законы.
Никогда не произносите слова "Конституция" прилюдно, если Вы не наделены:
а) властью
б) депутатской неприкосновенностью
в) чрезвычайными полномочиями
г) дипломатическим статусом
д) мандатом ООН.
В лучшем случае над вами будут неприкрыто смеяться.
В худшем - побьют камнями.
Если Вы, отстаивая собственные права, всё же решитесь сослаться на
Конституцию, учтите.
Это может обернуться для Вас катастрофическими последствиями.
В медицинском учреждении Вы наверняка останетесь без помощи.
В суде из потерпевшего гарантированно превратитесь в подсудимого.
Из милиции совершенно точно попадёте на кладбище...
Если 12 декабря Вы всё же ощутили непереносимый зуд в области языка.
Проверьте, плотно ли закрыты все двери и окна.
Заберитесь под одеяло.
И только тогда, как можно неразборчивей, прошепчите: "Конституция"...
(c) Михаил Юн