Home

Реклама

Я учусь писать скрипты

  • 13 Ноя, 2009 at 3:10 PM
linux
В догонку к посту выпустил второй релиз =).
Изменения: больше не нужен expect и устанавливать поэтому ничего больше не нужно вместо него telnet + sleep, есть вероятность что запустится на фряхе если #!/bin/bash поменять на #!/usr/local/bin/bash но не проверял. Появился маленький хелп он появится если запустить c ключем -h: "intvget.sh -h"
Вообщем навык приобретается помаленьку. Основное в файле прокомментировано. Вся инфа исключительно для учебных целей.

#!/bin/bash

# номер сериала
i=$1 # или help

if (( i != "-h" ))
then

# место куда будем закачивать
derekt=$2

# номер серии
n=$3

# если номер серии не был введен то скачиваем с первой
if [ -z "$n" ]
then
n=1
fi

# сколько будем ждать страницу из инета покане отвалимся по таймауту, если инет тормазной ставь побольше
slp=10

# скачиваем страничку в переменную $http
html=`( echo "GET /get/?url=http%3A%2F%2Fintv.ru%2Fview%2F%3Ffilm_id%3D$i&target=form HTTP/1.1"; echo "Host: cs.videosaver.ru"; echo; echo; sleep $slp ) | telnet cs.videosaver.ru 80 2> nul`

## генерируем самую первую ссылку для скачивания
url=`echo $html | sed 's/\"\(http:\/\/[0-9a-z\.\/]\{1,\}\)\" title=\"Файл №'$n'\"/\|\1\|/g' | awk -F"\|" '{ print $2 }'`

## находим имя
name=`echo $url | sed 's/\([0-9a-z]\{1,\}$\)/\|\1\|/' | awk -F"\|" '{ print $2 }'`

## здесь будет цикл
## если строка url не пустая тогда бежим качать

while [ -n "$url" ]
do

#проверка данных
echo сериал $i Номер серии №$n, url $url, имя файла $name

## делаем что бы имя файла было не 1.flv 2.flv - 9.flv а 01.flv 02.flv - 09.flv
if (( $n < 10 ))
then
newname=0$n
else
newname=$n
fi

## скачиваем по ссылки в нашу папочку файло
## переименовываем если закачалось удачно инкремируем счетчик если переименовали удачно
wget -P "$derekt" "$url" && mv "$derekt/$name" "$derekt/$newname.flv" && let n=$n+1

## генерим линк на следующую закачку
html=`( echo "GET /get/?url=http%3A%2F%2Fintv.ru%2Fview%2F%3Ffilm_id%3D$i&target=form HTTP/1.1"; echo "Host: cs.videosaver.ru"; echo; echo; sleep $slp ) | telnet cs.videosaver.ru 80 2> nul`

# подождем пока страница придет из инета
sleep $slp

url=`echo $html | sed 's/\"\(http:\/\/[0-9a-z\.\/]\{1,\}\)\" title=\"Файл №'$n'\"/\|\1\|/g' | awk -F"\|" '{ print $2 }'`
name=`echo $url | sed 's/\([0-9a-z]\{1,\}$\)/\|\1\|/' | awk -F"\|" '{ print $2 }'`

done

else # i=-h тут наш мини хелп
echo "intvget.sh [номер сериала] [\"дирректория для скачивания\"] [номер серии(не обязательно)]"
echo "пример intvget.sh 1234 \"./Видео/сериал 1/\" 7"
fi

exit 0

Tags:

linux
Началось с того что мы с любимой решили посмотреть сериалы с http://intv.ru/
Но, каждые ~15 минут всплывает реклама и терпеть это не было сил.
Тогда я решил скачать этот сериал при помощи этого сайта.
Ну так берем ссылку с intv вставляем в поле на сайте cs.videosaver.ru и у нас есть список файлов который мы скачиваем.
Типа все гуд но каждые примерно пол часа название файлов меняются и что бы качать дальше нужно обновить запрос на cs.videosaver.ru короче муторно и следить нужно. Решил я процес автоматизировать.
В наличии была машина с ubuntu ака debian.

1. ставим expect
#apt-get install expect

2. создаем файл expect.sh
делаем его исполняемым.
пишем в него:

#!/usr/bin/expect

# i это циферки которые берем со страницы с сериалом на сайте intv.ru например сериал x-files 2-й сезон ссылка http://intv.ru/view/?film_id=2737 берем последние цифорки подставляем
set i 2737

spawn telnet cs.videosaver.ru 80
expect "Escape character is '^]'."
send "GET http://cs.videosaver.ru/get/?url=http%3A%2F%2Fintv.ru%2Fview%2F%3Ffilm_id%3D$i&target=form HTTP/1.1\n\n"
expect eof

3. создаем файл intvget.sh
делаем его исполняемым.
пишем в него:

#!/bin/bash

## обнуляемся
## i - номер закачки, если закачка прервалась можно подставить номер серии с каторой нужно продолжать закачку
i=1

# место куда будем закачивать
derekt=./video/x-files/x2

# место куда положили файл expect.sh я положил в /home/username/bin
exp=./bin

## генерируем самую первую ссылку для скачивания
## запускаем ./bin/expect.sh получаем html файл с сылками на скачивание
## удаляем строки содержащие grep -v 'div id="divLink"' они лишнии
## рубим строку на части ставим перевод строки вместо value=" sed "s/value=\"/\n/g"
## в нем находим строку grep "Файл №$i\""
## делим строчку на части используя разделитель " и берем первое слово что и есть ссылка

url=`$exp/expect.sh | grep -v 'div id="divLink"' | sed "s/value=\"/\n/g" | grep "Файл №$i\"" | awk -F"\"" '{ print $1 }'`


## здесь будет цикл
## если строка url не пустая тогда бежим качать
## -n "$url"

while [ -n "$url" ]
do

## узнаем количество слов разделенных знаком / последнее есть название файла приравниваем число к var
var=`echo $url | awk -F"\/" '{ print NF }'`

## забираем последнее слово разделитель / это название файла скидываем его в переменную name
name=`echo $url | awk -F"\/" '{ print $'$var' }'`

#проверка данных
echo Номер закачки №$i, url $url, имя файла $name


## делаем что бы имя файла было не 1.flv 2.flv 3.flv а 01.flv 02.flv 03.flv
if (( $i < 10 ))
then
newname=0$i

else
newname=$i

fi


## скачиваем по ссылки в нашу папочку файло (поменять ./bin на переменную)
## переименовываем если закачалось удачно инкремируем счетчик если переименовали удачно
wget -P $derekt $url && mv $derekt/$name $derekt/$newname.flv && let i=$i+1

## генерим линк на следующую закачку
#url=`grep -v 'div id="divLink"' ./bin/cs.videosaver.ru.html | sed "s/value=\"/\n/g" | grep "Файл №$i\"" | awk -F"\"" '{ print $1 }'`
url=`$exp/expect.sh | grep -v 'div id="divLink"' | sed "s/value=\"/\n/g" | grep "Файл №$i\"" | awk -F"\"" '{ print $1 }'`

done



exit 0

4. запускаем скрипт intvget.sh курим бамбук 20-30 минут и можно смотреть первую серию, пока смотрим, закачается остальное.

это был первый опыт скриптописания, поправки предложения по усовершенствованию принимаются.
(с) Lis

Стим панк

  • 23 Мар, 2009 at 7:25 PM
огне лис
Стим панк или паро панк, как я узнал направление альтернативного будущего в котором идет торжество паровых машин. За основу берется Англия викторианского (столь мной любимого, хотя фоток нормальных платьев и костюмов в инете днем согнем...) периода, а еще выходцами этого места и периода являются так же романтик готы!

Клавиатура

  • 23 Мар, 2009 at 11:29 AM
linux
Откопал клаву на работе, хотел было уже подключить как заметил что у нее странная раскладка.

juick.com

  • 24 Фев, 2009 at 6:36 PM
linux
ну наконец то и у меня руки до него дошли я тут

аськокапец

  • 23 Фев, 2009 at 10:57 AM
all ok

Переходим на Джаббер!

Представьте, что в мире есть только один почтовый сервер www.email.com и все любители электронной переписки обязаны пользоваться именно им, устанавливать его клиентское ПО и смотреть его рекламу.

Примерно так обстоят дела в мире ICQ. И в последнее время владельцы этого cервиса (AOL) строят различные козни пользователям альтернативного ПО. Это приводит к тому, что я теряю контакт с половиной друзей.

Бизнес-модели AOL и Рамблера основаны на том, что я ленивое ограниченное существо, привыкло к их дражайшей Асе и буду покорно смотреть их дурацкую рекламу и пользоваться их безобразными программами. Ведь на ICQ свет клином не сошёлся. Есть гораздо более совершенная и открытая система Jabber и масса более удобных программ. Перейти на «Джаббер» – дело нескольких минут.

Так что, если вы не видите меня в Аське, то ищите в Джаббере!
akinava@jabber.ru – это мой джаббер-идентификатор, JID.

Jabber не имеет владельцев, как и протокол электронной почты. Хотя, конечно, у Jabber-серверов есть хозяева. Jabber предоставляет куда более интересные возможности, чем ICQ. Некоторые из программ, например, русскоязычный QIP Infium позволяют одновременно находиться и в ICQ и в Jabber.

Читайте и присоединяйтесь:
– В целом о Jabber
– Клиентские программы
– Jabber-сервера
– Описание регистрации в Jabber

Встретимся в Джаббере!

Разместите этот текст у себя в блоге или на сайте!
[Получить HTML-код]

Tags:

17 Фев, 2009

  • 1:13 PM
linux
ДатаВходящий(in) (Мб) Исходящий(out) (Мб)
2008 Июнь 26 079,70 30 041,27
2008 Июль 28 382,17 171 828,95
2008 Август 31 063,06 125 090,93
2008 Сентябрь 37 022,85 114 431,07
2008 Октябрь 79 838,77 182 055,29
2008 Ноябрь 48 372,13 221 625,30
2008 Декабрь 42 499,65 273 567,05
2009 Январь 46 203,23 331 008,86
2009 Февраль 12 984,99 158 914,23
Итого: 352 446,55 1 608 562,96



Активно юзаем...

Отходняк

  • 15 Фев, 2009 at 11:32 AM
огне лис
Настроение соответствующие

Tags:

Вера

  • 15 Фев, 2009 at 2:06 AM
devil
Любовь превратили в веру. АМИНЬ!
А дзен рядом =)

Час "X"

  • 12 Фев, 2009 at 6:00 PM
linux
Сколько осталось до 1234567890?

Дата 2009-02-14 02:31:30

узнать в unix: date +%s

Tags:

icq

  • 3 Фев, 2009 at 6:51 PM
linux
Аська снова бьется в агонии.
добро пожаловать на
jabber
я онлайн
gtalk
Мой контакт akinava@jabber.ru

Tags:

aspire one

  • 24 Янв, 2009 at 3:20 AM
linux
Все-таки ssd в ноуте сдох буду припаивать шлейф sata...
Давно паяльник в руках не держал.
linux
akinava@jabber.ru
Всем кому нужен аналог аськи читать это

Стиляги

  • 16 Янв, 2009 at 7:37 PM
all ok
Понравилось этот рок мюзикл, теперь песня не отпускает...



Герою которого играет Сергей Гамаш респект. Приехал с войны контуженный, но живой и целый, выпинал нахрен жену шалаву, воспитывает двух пацанов, причем без строевой, и когда Мелса потянуло в стиляги понял его.
assasin
Как только заканчиваются сразу становится невыносимо чего то хотеться. Вот и сейчас хочется на Игору, не просто покататься а именно на Игору часов на шесть, что бы укататься до одури...

...Ты в кибитку не ходи...

Житие

  • 9 Янв, 2009 at 4:13 AM
замок
Родители уехали. Я еще не осознал что это произошло, что поделать, тормоз... Сижу на кухне один, глушу Nemiroff. Между нами 11000 километров (для любопытных набрать в google.map Дипкун). У них я появлюсь не скоро. Оставили предпочтительные задачи которые я должен решить. Быстрее выше сильнее (с) Ленин Квартира, жена, внуки и не обязательно в указанной последовательности. Добрые они у меня, но суровые! Такой же и я получился =).
Хорошо доехать им! Тьфу тьфу тьфу, тук тук тук.

SVG альтернатива Adobe Flash

  • 5 Янв, 2009 at 1:26 PM
linux
Я начинающий web developer. Свою команду определил уже давно, это HTML CSS (куда ж без них), javascript php mysql и Adobe Flash о котором и пойдет речь.
Очень часто сидя на linux возникала необходимость загружаться в windows, так как Adobe Flash работает под win. Но он так же работает и под Mac OS X. Чуть было грешным делом его не поставил.
И совсем недавно наткнулся на открытый графический стандарт SVG, который имеет структуру XML документа. Проще говоря картинки можно рисовать в блокноте! Хотя есть и графические редакторы например Inkscape.
Но Adobe Flash на данный момент имеет большее распространение, т.к появился раньше. Поживем увидим

Праздники

  • 2 Янв, 2009 at 5:09 PM
all ok
На время праздников в жж затишье, только Алан видимо не отдыхает никогда =)
Всем приятных и удачных праздников!

наладошник продолжение

  • 19 Дек, 2008 at 1:28 AM
linux
в догонку к кпк
нашел еще один интересный девайс Trimble Juno SB и SC
до 12 часов работы и все при нем
но он еще в разработке... и сколько стоить будет?

наладошник

  • 19 Дек, 2008 at 12:43 AM
linux

они похожи как будто одинаковые
Acer n310, n311, n320, n321
Жудко понравился дизайн, до того что хочу-нимагу, но черт придется добавить GlobalSat SD 502! В них нет GPS!!!
я зол!
Альтернатива Asus MyPal A696

Забавные картинки

  • 18 Дек, 2008 at 11:07 PM
огне лис
Люблю забавные картинки

Вспомнилась Ленчик =) Выздоравливай!

Latest Month

Ноябрь 2009
Вс Пн Вт Ср Чт Пт Сб
1234567
891011121314
15161718192021
22232425262728
2930     

Syndicate

RSS Atom
Разработано LiveJournal.com
Designed by Jamison Wieser