Вытащить капчевую картинку. PERL.

Discussion in 'PHP' started by 4upakabr0, 5 Jul 2011.

  1. 4upakabr0

    4upakabr0 Member

    Joined:
    14 May 2008
    Messages:
    124
    Likes Received:
    23
    Reputations:
    0
    Есть скрипт выдающий капnчу: captcha.php?aasasas

    Приблизительно такого виду. Т.е. с параметром скрипт. Моя задача вытащить оттуда картинку. Т.е .я перлом (LWP::Useragent) хожу на сайт, где мне отдается эта картинка. Как мне из юзерагента ее сохранить на хард, чтобы в дальнейшем передать на антигейт? Или может есть лучшие альтернативы антигейту?
     
  2. 4upakabr0

    4upakabr0 Member

    Joined:
    14 May 2008
    Messages:
    124
    Likes Received:
    23
    Reputations:
    0
    За это время я продвинулся на шаг - юезрагент не подгружает всякие там картинки и прочую поебень, поэтому все куда проще. Но пока полного решения я не достиг.
     
  3. chexec

    chexec Member

    Joined:
    19 Nov 2010
    Messages:
    67
    Likes Received:
    11
    Reputations:
    3
    на лицо полное непонимание происходящего. иди читай книжки об основе интернетов, кодить тебе еще рано.
     
  4. Melfis

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

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    Code:
    use LWP::UserAgent;
    
    $bro = LWP::UserAgent->new();
    
    $url = "http://basik.ru/images/3d_autumn/short.jpg";
    $file = "short.jpg"; //под каким сохранять именем и куда
    
    $request = HTTP::Request->new(GET => $url);
    
    $bro->request($request, $file);
    если у капчи имена динамические, то юзай регулярное выражение
     
  5. 4upakabr0

    4upakabr0 Member

    Joined:
    14 May 2008
    Messages:
    124
    Likes Received:
    23
    Reputations:
    0
    иди на XyЙ,
    хоть выше я не воткнул что юзерагент не будет подгружать то, что в src у имэйджа. Да и вообще он не будет ничего подгружать. Советы читать дельны тогда, когда ты говоришь что читать. А ваще если залез в сабж - то будь в рамках сабжа и не расплывайся своим мозгом.


    Спасибо. Не все так просто, хотя мб твой метод тоже подойдет.

    Решение оказалось простым:
    Поэтому спарсив sid я сделал так:

    $res = $ua->get('http://www.site.com/captcha/captcha.php?sid=', ':content_file' => 'pic.png');
     
  6. chexec

    chexec Member

    Joined:
    19 Nov 2010
    Messages:
    67
    Likes Received:
    11
    Reputations:
    3
    это не совет. совет когда по-делу. а тут как птенцу разжуй и в рот засунь. для таких тупых тем есть прилепленные топики, тебе на заметку.
     
  7. 4upakabr0

    4upakabr0 Member

    Joined:
    14 May 2008
    Messages:
    124
    Likes Received:
    23
    Reputations:
    0
    ок. что ты мне разжевал и в рот положил? кроме говна своего ничего, ммм?
     
  8. chexec

    chexec Member

    Joined:
    19 Nov 2010
    Messages:
    67
    Likes Received:
    11
    Reputations:
    3
    учись с незнакомыми людьми общаться, я тебя еще ни разу не оскорбил, а ты уже 2 раза. я просто не понимаю, зачем лезть в кодинг, если ты уже в самом начале ответы ищешь у других, а не в документации. тут я не говорю про ньюансы, подводные камни, какие-либо ошибки в коде. у тебя совсем другой случай, а именно, как я и сказал, полное непонимание того, что ты хочешь. ты так далеко не уедешь... и мой тебе совет: делаешь что-то и не понимаешь, как работает - начни понимать все зависимости той темы, в которой ты не понимаешь. тогда выйдет толк, а так у тебя ничего путного не выйдет.
     
    #8 chexec, 5 Jul 2011
    Last edited: 5 Jul 2011
  9. 4upakabr0

    4upakabr0 Member

    Joined:
    14 May 2008
    Messages:
    124
    Likes Received:
    23
    Reputations:
    0
    Спасибо, уважаемый. Вы мне очень помогли. Пойду, пожалуй, покончу жизнь самоубийством.
     
  10. chexec

    chexec Member

    Joined:
    19 Nov 2010
    Messages:
    67
    Likes Received:
    11
    Reputations:
    3
    зря ерничаешь, я тебе совет даю, чтобы было легче учиться.
     
  11. dpe_x

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

    Joined:
    8 Sep 2010
    Messages:
    155
    Likes Received:
    35
    Reputations:
    14
    Code:
     $img = $ua->get('http://site.by/captha.php')->content;
                                 open(PICTURE, ">captcha.jpg");
                                 binmode PICTURE;
                                 print PICTURE $img;
                                 close PICTURE;
    
     
  12. dr.Web

    dr.Web Member

    Joined:
    2 Feb 2009
    Messages:
    7
    Likes Received:
    22
    Reputations:
    10
    да что вы всё сайт маскируете, ясен пень что разговор идёт о вк. а про каптчу у вк есть дохера тем. гугли
     
  13. 4upakabr0

    4upakabr0 Member

    Joined:
    14 May 2008
    Messages:
    124
    Likes Received:
    23
    Reputations:
    0
    Коли был бы вконтакт маскировка не уместна была бы, ты прав. Но она в наличии, а значит делай вывод.
     
  14. dr.Web

    dr.Web Member

    Joined:
    2 Feb 2009
    Messages:
    7
    Likes Received:
    22
    Reputations:
    10
    ну ведь можно же взять готовый модуль для каптчи и переделать его под свои нужды.