Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > SocksChain: указание определенного сокса


Автор: Валерия 30.1.2010, 13:39
Код

@sockses = file_get_contents("socks/s.txt", 1);
foreach $sock (@sockses){
    push (@$socks, $sock);

}

@LWP::Protocol::http::SocksChain::EXTRA_SOCK_OPTS = ( Chain_Len    => 1,
                                                       Debug        => 1,
                                                       Random_Chain => 1,
                                                       Chain_File_Data => $socks,
                               Timeout => 10,
                                                       Auto_Save    => 0,
                                                       Restore_Type => 0 );

Таким образом указываю работу с соксами. (file_get_contents моя функция)
Теперь, когда я создаю много потоков и там использую LWP, то в каждом вызове берется рандомный сокс.
Так вот, как сделать что бы в каждом потоке был один работающий сокс, и он не менялся при каждом новом вызове LWP ? 
Если есть мануал по соксчайну - тоже приветсвуется, т.к не могу нигде найти, кроме подобного примера.

Автор: Pfailed 30.1.2010, 17:36
Цитата(Валерия @  30.1.2010,  13:39 Найти цитируемый пост)
Так вот, как сделать что бы в каждом потоке был один работающий сокс,

Просто создавайте в каждом потоке свой объект LWP и модифицируйте его согласно мануалу LWP::Protocol::http::SocksChain. Эти изменения будут распространяться только на данный поток.

Автор: Валерия 30.1.2010, 21:17
Спасибо, всё получилось smile
А вот еще такой вопросик в тему, а можно ли давать сразу десяток прокси, и если он попадает на нерабочую, то он не возвращает "500 error" а будет брать следующую, пока не найдет рабочую или они не кончатся?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)