[Perl] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    Code:
    S::pr(5,9)
    
     
    _________________________
  2. svesve

    svesve Elder - Старейшина

    Joined:
    15 Jun 2007
    Messages:
    574
    Likes Received:
    86
    Reputations:
    11
    В LWP::UserAgent при использовании проксика надо будет использовать $browser->proxy(['http']=>"http://".$proxy_addr."/"); ???

    $proxy_addr - это я так понимаю адрес прокси, но как быть если прокся например на порту 3128.
    товишь получается при использовании проксика надо будет использовать $browser->proxy(['http']=>"http://212.212.212.1:3128/"); ???
     
  3. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Прокси лучше юзать с сокетами, имхо
     
  4. svesve

    svesve Elder - Старейшина

    Joined:
    15 Jun 2007
    Messages:
    574
    Likes Received:
    86
    Reputations:
    11
    ну а если через UA?? а то переписывать весь скрипт вкорне не охото
     
  5. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    http://forum.antichat.ru/showthread.php?t=20299
     
  6. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Вопрос, фиг знает как - один аллах ведает, но таки заставил работать

    Net::SSH::W32Perl - аналог Net::SSH::perl

    под activeperl под виндой, но:

    - заходит, только если выставить

    my $ssh = Net::SSH::W32Perl->new (
    $host,
    interactive => 1,
    ....

    т.е. ввод пароля вручную через консоль, любые попытки автологина жестко пресекаются и пишет Permission denied и прочее. Много, очень много читал про

    Net::SSH::perl::Auth::KeyboardIn

    причиндалы есть, но не помогает. Кто в курске - подскажите плз, как все таки ввести автоматически пароль
     
  7. Spyder

    Spyder Elder - Старейшина

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    Он у тебя просит ввести пароль через STDIN ?
     
  8. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    ага, если interactive => 1 или в файле AuthMgr.pm закоментировать строчку

    next unless $auth->enabled;

    паблик ключа на компе нет, пишу брут, а не клиент
     
  9. Spyder

    Spyder Elder - Старейшина

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    А если писать на IO::Socket ?
     
  10. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    SSH доступ на сокетах? Даже не видел такого в гугле. Есть пример? Там же тьма-тьмущая всякого, чтобы вообще SSH работало - начиная от crypt-des и кончая другими ужасами
     
  11. biophreak

    biophreak Elder - Старейшина

    Joined:
    3 Aug 2007
    Messages:
    348
    Likes Received:
    63
    Reputations:
    15
    Хм, а на чем по-твоему SSH работает...я всегда думал, что поверх TCP?
    Возьми доку по протоколу и пиши на сокетах...работать будет быстрее, да еще можешь реализовать то, чего нету в модулях :)
     
  12. sint

    sint New Member

    Joined:
    9 Oct 2009
    Messages:
    7
    Likes Received:
    0
    Reputations:
    0
    Драсьте, я новичок в Perl...
    Ни как не могу нописать прокси серва для рабочей танции *nix.
    (пробовал использовать wwwlib (или libwww - не помню) - не осилил)

    Идея такая:
    Прокси(как Daemon) берет весь трафик
    и работает с ним
    через цепочку прокси...
    так же обратно...

    На всяких форумах писали что это делается просто, но на ипримере ни кто не смог показать.
    Заранее спазибо!
     
  13. sint

    sint New Member

    Joined:
    9 Oct 2009
    Messages:
    7
    Likes Received:
    0
    Reputations:
    0
    Чё "виртуально" ни кто не знает???
     
  14. winflip

    winflip New Member

    Joined:
    13 May 2009
    Messages:
    36
    Likes Received:
    1
    Reputations:
    0
    Привет ачат. У меня есть объект класса LWP::UserAgent. Скажите, как мне используя метод класса get(не post, не request) передать cookie, а по возвращение результата достать другие cookie
     
  15. biophreak

    biophreak Elder - Старейшина

    Joined:
    3 Aug 2007
    Messages:
    348
    Likes Received:
    63
    Reputations:
    15
    Ну просто вставь руками в запрос, что-т типа:
    Code:
    $resp = $ua->get($url,
      'Accept' => 'text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5',
      'Accept-Language' => 'ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3',
      'Accept-Encoding'        => 'gzip,deflate',
      'Accept-Charset'         => 'windows-1251,utf-8;q=0.7,*;q=0.7',
      'Connection'             => 'keep-alive',
      'Keep-Alive'             => '300',
      'Cookie'                 => 'id=12345'
    );
    
    Поулчать так же, парси ответ на заголовок Cookie =)
    Это самое простое решение.
     
  16. winflip

    winflip New Member

    Joined:
    13 May 2009
    Messages:
    36
    Likes Received:
    1
    Reputations:
    0
    Ну это я видел, когда гуглил, а вот как получить?
    А как заголовки спарсить?
     
  17. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    юзать сокеты
     
  18. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    Если чисто кукисы, то
    $ua = new LWP::UserAgent;
    print $ua->get('http://r0.ru/')->header('Set-Cookie');

    Если все заголовки, то
    print $ua->get('http://r0.ru/')->headers->as_string;
     
    _________________________
  19. winflip

    winflip New Member

    Joined:
    13 May 2009
    Messages:
    36
    Likes Received:
    1
    Reputations:
    0
    Спасибо, я вас верил)))
     
  20. winflip

    winflip New Member

    Joined:
    13 May 2009
    Messages:
    36
    Likes Received:
    1
    Reputations:
    0
    Скажите, как отправлять переменные GET? Вот так:
    Code:
    my $response = $ua->get('http://example.net/raskopki/send.php?outurl=http://eaxmple.net/raskopki/response.pl&loadurl=http://example.net/raskopki/picture.jpg',
      						'Accept' => 'text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5',
      						'Accept-Language' => 'ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3',
      						'Accept-Encoding'        => 'gzip,deflate',
     						'Accept-Charset'         => 'windows-1251,utf-8;q=0.7,*;q=0.7',
      						'Connection'             => 'keep-alive',
      						'Keep-Alive'             => '300');
    Вроде не правильно, или всё таки правильно? В том дело, что тут в качестве переменных выступают url адреса
     
Thread Status:
Not open for further replies.