12 марта 2010, 13:27
Таскаю за собой по всем модулям и скриптам. sub getURL { my $params = shift; croak q[HASH needed as param] if ref ($params) ne 'HASH'; croak q[HREF needed in HASH] if (!exists ($params->{href})); $params->{href} = q[http://].$params->{href} if $params->{href} !~ /^http (s)?:\/\//; $params->{headers} = 0 if !$params->{headers}; $params->{ag} = qq ($user_agents[rand(($#user_agents+1))]) if !exists $params->{ag}; $params->{timeout} = […]
18 декабря 2009, 14:48
Скорее для себя, чтобы не забыть $ cd /path/to/dev/folder/ $ h2xs -b 5.8.8 -AX Foo::Bar -v 1.00 Writing Foo-Bar/lib/Foo/Bar.pm Writing Foo-Bar/Makefile.PL Writing Foo-Bar/README Writing Foo-Bar/t/Foo-Bar.t Writing Foo-Bar/Changes Writing Foo-Bar/MANIFEST
10 ноября 2009, 16:49
Хозяйке на заметку: Два+ пробела заменяются не так: perl -le 'use Data::Dumper; my $x = «abc bca \n \t abc bca»; $x =~ s/\s{2,}/ /g; print Dumper $x' $VAR1 = 'abc bca abc bca'; Два+ пробела заменяются так: perl -le 'use Data::Dumper; my $x = «abc bca \n \t abc bca»; $x =~ s/[[:blank:]]{2,}/ /g; […]
9 сентября 2009, 15:08
#! /usr/bin/perl -w use strict; use Socket; my $port = shift || 82; my $proto = getprotobyname ('tcp'); socket (SERVER, PF_INET, SOCK_STREAM, $proto) or die «socket: $!»; setsockopt (SERVER, SOL_SOCKET, SO_REUSEADDR, 1) or die «setsock: $!»;
8 сентября 2009, 13:36
#!/usr/bin/perl -w use strict; use Term::ANSIColor; use Time::HiRes qw[usleep]; if (defined ($ARGV[0]) && $ARGV[0]!~/^\d+$/){ print color 'reset'; exit; } my $num = 2000; # сколько раз крутить my $strlen = 20; # длина строки my $length = 10000; # чем больше — тем дольше будет «вычисляться» строка
4 сентября 2009, 17:00
Для одной мерзкой цели потребовалось ходить в ЖЖ через HTTP — так удобней парсить некоторые вещи. Собственно, сниппет под катом. Пара слов о куках. Мне стало уже лениво писать под них лишние регулярки — но список их следующий: ljuniq ljmastersession ljloggedin BMLschemepref (схема кстати — кому хочется обратно dystopia — просто смените эту куку) langpref ljsession ljdomsess.{username} — у меня, […]
31 августа 2009, 16:51
Вызывается с параметром тег [сколько записей смотреть на предмет твиттерчан, по умолчанию 100] Типа perl script.pl followfriday 80 — пролистает 80 последних записей ленты и вычленит из них все встречающиеся ники, которые потом поделит на посты до 140 символов. Запись в кроне, соответственно — # пятница 10 16 * * 5 perl script.pl followfriday # понедельник […]
28 августа 2009, 10:03
Цель скрипта проста — он берёт последние 50 записей, выдирает оттуда твиттерчан и постит их ники под тегом #followfriday ) #!/usr/bin/perl -w use strict; use WWW::Curl::Easy; use Data::Dumper; use URI::Escape;
29 апреля 2009, 13:18
НЕРАБОЧИЙ — Рабочий логин вконтакте выложил тут — http://www.skazkin.ru/p/novyj-login-vkontakte-perl-curl.html#comments Пример использования: my $cookies = getLogin({login=>q[user@email.ru],password=>q[123456]}); В результате получаем или ссылку на массив с куками, которые мы потом можем использовать для логина, или же undef. Под катом сам сниппет.
5 ноября 2008, 16:39
Только что придумал как воплотить в слова то, что знаю давно. Принцип апельсина заключается в следующем: Предположим, что у нас есть команда из 6 человек. Есть апельсин без кожуры. В нём 6 долек. Цель — максимально быстро сожрать апельсин. Каждый член команды обязан съесть по дольке апельсина.