Автор Тема: Несколько вопросов по Perl  (Прочитано 4179 раз)

0 Пользователей и 1 Гость просматривают эту тему.

  • Гость
Несколько вопросов по Perl
« : 14 Февраля 2002, 13:32:51 »
1)
Как из массива состоящего из цифр (н-р:
1, 5, 10, 51, 7)
Выбрать произвольным образом какое-нибуль число. Как задать вероятность в процентах того, что выпадет именно это число?
2)
У меня есть массив, в него записан файл, н-р:
log|5|kdgshg
gs|10|kdjhfs
qq|1|kdsfa
yg|11|fdvgdf
jsh|72|dg

Как его преобразовать, так чтобы он по второму параметру выстроялся по возростанию?

3)
Вопрос по сокетам:
Вот простой код коннекта:

#!/usr/local/bin/perl
use Socket;
$AF_INET=2;
$SOCK_STREAM=1;
$protocol=(getprotobyname(\'tcp\'))[2];
$end="\\015\\012";
$site="nlib.narod.ru/";# Адрес хоста без http://
$port=80;
$addr=(gethostbyname($site))[4];
$addrs=pack (\'S n a4 x8\', $AF_INET, $port, $addr);
$cur=\'parts/violino.html\';#имя файла на хосте Например /cgi-bin/cookie.cgi


{print "Content-Type: text/html\\n\\n";

if (!(socket(LOAD,$AF_INET,SOCK_STREAM,$protocol))){

print "Невозможно создать сокет!"; exit;}

if (!(connect(LOAD, $addrs))){print "Невозможно соединиться!"; exit;}

select(LOAD);
$|=1;
select(STDOUT);

print LOAD "GET $cur HTTP/1.0$end";
print LOAD "Content-Type: application/x-www-form-urlencoded$end";
print LOAD "Accept: text/html$end";
print LOAD "Accept: image/jpeg$end";
print LOAD "User-Agent: Mozilla/8.0 (Сам ты юзер!;I 8.0; Windows 98; DigExt)$end";
print LOAD "Accept: image/gif$end";
print LOAD "Accept: image/x-xbitmap$end";
print LOAD "Referer: http://www.hvost.kz/$end";
print LOAD "Accept: image/pjpeg$end";
print LOAD "Cookie: nik=uuu; passwd=e789201b865999990c17bf5bc9c15$end";
print LOAD "Host: $site$end";
print LOAD "Authorization: Basic $encoded$end";
print LOAD "$end$end";
@body=;


print @body;

close (LOAD);
}

Но коннект происходит не совсеми сайтами (в примере сайт не грузиться). Говорит, что коннект закрыт...
Как исправить это дело?
Пока все. Буду рад вашей помощи, особенно, если она будет разжеванна на нет. А то порой короткое объяснение еше больше запутывает...

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Несколько вопросов по Perl
« Ответ #1 : 14 Февраля 2002, 13:55:42 »
1) perldoc -f rand
2) @a = sort {(split(/\\|/,$a))[1] <=> (split(/\\|/,$b))[1] } @a;
2B OR NOT 2B = FF

Оффлайн NAS

  • Неопытный юзер
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2951
  • +1/-0
  • 1
    • Просмотр профиля
    • http://nhouse.ru
Несколько вопросов по Perl
« Ответ #2 : 14 Февраля 2002, 15:53:03 »
Цитировать
3)


А там наверняка закрыто. Народ не любит, когда у него контент напрямую берут.

  • Гость
Несколько вопросов по Perl
« Ответ #3 : 15 Февраля 2002, 08:45:46 »
Но через LWP все проходит наилучшим образом! Но я этом модуле я не знаю как подменить переменные окружения... :(

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Несколько вопросов по Perl
« Ответ #4 : 15 Февраля 2002, 09:21:40 »
perldoc lwpcook
2B OR NOT 2B = FF

  • Гость
Несколько вопросов по Perl
« Ответ #5 : 15 Февраля 2002, 11:30:41 »
Это не совсем то.
Куки добавить в заголовок я могу.
Но как например изменить юзера-агента?

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Несколько вопросов по Perl
« Ответ #6 : 15 Февраля 2002, 11:49:52 »
Там это написано, англицким по бэкграунду - читайте внимательнее.
2B OR NOT 2B = FF

Оффлайн Green Kakadu

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2757
  • +1/-0
  • 0
    • Просмотр профиля
    • http://gnezdo.webscript.ru
гы
« Ответ #7 : 15 Февраля 2002, 14:24:00 »
Цитировать
Куки добавить в заголовок я могу.

cook - это в данном случае не cookies, а рецепты советы.
lwpcook - советы, решения по lwp
 в исканиях.

Оффлайн soda

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 12
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Несколько вопросов по Perl
« Ответ #8 : 04 Ноября 2005, 12:55:17 »
а никто не подскажет как в данном коде реализовать таймаут, если к примеру прокси умерла?
wbr, soda
free MP3

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28