ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

проблеми с установкой модулей
  #1  
Старый 12.11.2008, 20:55
Аватар для eLWAux
eLWAux
Members of Antichat - Level 5
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


Отправить сообщение для eLWAux с помощью ICQ
По умолчанию проблеми с установкой модулей

привет

нашол пример для роботи через прокси:
Код:
system('cls');

use IO::Socket::Socks;
my $proxy_addr = "128.10.10.15";
my $proxy_port = 3128;
my $conn_addr = "http://www.mail.ru/";
my $conn_port = 80;
my $socks = new IO::Socket::Socks(ProxyAddr=>$proxy_addr,
                                  ProxyPort=>$proxy_port,
                                  ConnectAddr=>$conn_addr,
                                  ConnectPort=>$conn_port,
                                  ) or die "Can't create Sock: $!";
 
print $sock "GET ",$conn_addr," HTTP/1.0\n\n";
 
while($line = <$sock>) {
 
  print $line;
 
} 
$socks->close()
запускаю,.. пишет
Цитата:
Can't locate IO/Socket/Socks.pm in @INC (@INC contains: C:/Perl/lib C:/Perl/site
/lib .) at D:\pr0gramm1n9\perl\my\proxy\_proxy.pl line 3.
BEGIN failed--compilation aborted at D:\pr0gramm1n9\perl\my\proxy\_proxy.pl line
3.
, я так понял что модуль IO::Socket не установлен..

запускаю ppm.bat
ввожу install IO::Socket
и опять ошибка!

что делать?
 
Ответить с цитированием

  #2  
Старый 12.11.2008, 21:00
Аватар для eLWAux
eLWAux
Members of Antichat - Level 5
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


Отправить сообщение для eLWAux с помощью ICQ
По умолчанию

О!

установил вроде..) скачал новий перл и установил..
ppm.bat:
проверка IO::Socket:
Цитата:
Verifying IO-Socket-Socks ...
3 files verified
как я понямаю, я устанил...

запускаю скрипт с надеждой, и ..... пля! опять ошибка:
Цитата:
Can't locate IO/Socket/Socks.pm in @INC (@INC contains: C:/Perl/site/lib C:/Perl
/lib .) at D:\pr0gramm1n9\perl\my\proxy\_proxy.pl line 3.
BEGIN failed--compilation aborted at D:\pr0gramm1n9\perl\my\proxy\_proxy.pl line
3.
что такое?

================================

переделал скрипт
Код:
system('cls');
print '1';

use IO::Socket::Socks;
print '1';
my $proxy_addr = "128.10.10.15";print '1';
my $proxy_port = 3128;print '1';
my $conn_addr = "http://www.mail.ru/";print '1';
my $conn_port = 80;print '1';
my $socks = new IO::Socket::Socks(ProxyAddr=>$proxy_addr,
                                  ProxyPort=>$proxy_port,
                                  ConnectAddr=>$conn_addr,
                                  ConnectPort=>$conn_port,
                                  ) or die "Can't create Sock: $!";
 print '1';
print $sock "GET ",$conn_addr," HTTP/1.0\n\n";
 print '1';
while($line = <$sock>) {
 print '1';
  print $line;
 print '1';
} 
$socks->close();
print '1';
теперь ошибка:
Цитата:
Can't create Sock: Unknown error at D:\pr0gramm1n9\perl\my\proxy\_proxy.pl line
10.
111111
что я не так делаю?

Последний раз редактировалось eLWAux; 12.11.2008 в 21:29..
 
Ответить с цитированием

  #3  
Старый 12.11.2008, 23:26
Аватар для demond
demond
Участник форума
Регистрация: 05.11.2008
Сообщений: 105
Провел на форуме:
292722

Репутация: 71
По умолчанию

тебе надо установить модуль IO::Socket::Socks
Какой perl ты пользуешь? Может так получить, что ты установил необходимый модуль (кстате в ActiveState он установлен, если по нему есть документация), но запускаешь с помощью другого perl (который прописан в системной переменной). Попробуй запустить скрипт указав полный путь к perl.exe. И вообще ActivePerl лучше всего ставить в корень!
Я когда разюирался с модулем IO::Socket::Socks столкнулся с проблемой другого плана! Он отказался работать с обычной проксей! Только для Socks 5
 
Ответить с цитированием

  #4  
Старый 12.11.2008, 23:31
Аватар для eLWAux
eLWAux
Members of Antichat - Level 5
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


Отправить сообщение для eLWAux с помощью ICQ
По умолчанию

Цитата:
тебе надо установить модуль IO::Socket::Socks
Какой perl ты пользуешь? Может так получить, что ты установил необходимый модуль (кстате в ActiveState он установлен, если по нему есть документация), но запускаешь с помощью другого perl (который прописан в системной переменной). Попробуй запустить скрипт указав полный путь к perl.exe. И вообще ActivePerl лучше всего ставить в корень!
Я когда разюирался с модулем IO::Socket::Socks столкнулся с проблемой другого плана! Он отказался работать с обычной проксей! Только для Socks 5
5.10.0 использую
перл у меня стоит в : c:/perl/ ,тоесть в корне
просто у меня привязка к файлам *.pl стоит на запуск c:/perl/bin/perl.exe, тоесть скрипти норм запускаютса..

вот вроде я модуль установил.., только запускаю и пишет ошибка сооденения с чем то..
(не с прокси и не с сайтом)
 
Ответить с цитированием

  #5  
Старый 13.11.2008, 11:29
Аватар для demond
demond
Участник форума
Регистрация: 05.11.2008
Сообщений: 105
Провел на форуме:
292722

Репутация: 71
По умолчанию

Кстате, знакомый скрипт. :-) Кажется я знаю где ты его взял! Но он у меня так и не заработал. :-( я там написал, что переделать его надо.
И еще: попробуй запустить: perl -e "use IO::Socket::Socks"; из комендной строки.
Если выдаст ошибку, значит модуль не установлен! А пока он у тебя на его вызов и ругается!
Ты, кстате, в начале скрипта use пишешь?
 
Ответить с цитированием

  #6  
Старый 13.11.2008, 19:53
Аватар для eLWAux
eLWAux
Members of Antichat - Level 5
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


Отправить сообщение для eLWAux с помощью ICQ
По умолчанию

Цитата:
C:\Perl\bin>perl.exe -e "use IO::Socket::Socks";

C:\Perl\bin>
запускаю скрипт
Код:
system('cls');

$num = 0;
sub p {$num++; print $num;}


use IO::Socket::Socks;
p;
my $proxy_addr = "75.69.203.194";
p;
my $proxy_port = 15689;
p;
my $conn_addr = "http://www.mail.ru/";
p;
my $conn_port = 80;
p;
my $socks = new IO::Socket::Socks(ProxyAddr=>$proxy_addr,
                                  ProxyPort=>$proxy_port,
                                  ConnectAddr=>$conn_addr,
                                  ConnectPort=>$conn_port,
                                  ) or die "Can't create Sock: $!";
p;
print $sock "GET ",$conn_addr," HTTP/1.0\n\n";
p;
while($line = <$sock>) {
print $line;http://forum.antichat.ru/thread91556.html
p;
} 
$socks->close();
p;
(прокси взял из сайта http://www.checker.freeproxy.ru/checker/last_checked_proxies.php для Socks5)

результат виполнения:
Цитата:
Can't create Sock: at D:\pr0gramm1n9\perl\my\proxy\_proxy.pl line 17.
12345
 
Ответить с цитированием

  #7  
Старый 13.11.2008, 22:29
Аватар для demond
demond
Участник форума
Регистрация: 05.11.2008
Сообщений: 105
Провел на форуме:
292722

Репутация: 71
По умолчанию

Все дело в том, что по адресу 75.69.203.194:15689 обычный прокси сервер, а не Socks 5. IO-Socket-Socks только для socks 5.

Вот рабочий пример кода для работы с обычной проксей:
Код:
use IO::Socket;
use IO::Socket::INET;

my $conn_addr = "http://www.mail.ru/";

my  $sock = IO::Socket::INET->new(PeerAddr => '75.69.203.194',
                                 PeerPort => 'http(15689)',
                                 Proto    => 'tcp') or die "Can't create Socks: $!";

print $sock "GET ",$conn_addr," HTTP/1.0\n\n";

while($line = <$sock>) {
print $line;
}
Проверял. Все работает.
 
Ответить с цитированием

  #8  
Старый 14.11.2008, 00:04
Аватар для eLWAux
eLWAux
Members of Antichat - Level 5
Регистрация: 15.06.2008
Сообщений: 941
Провел на форуме:
5111568

Репутация: 2399


Отправить сообщение для eLWAux с помощью ICQ
По умолчанию

мдее..
что со мною..

Код:
use IO::Socket;
use IO::Socket::INET;

sub saveFile
{
	open(myFILE,">$_[0]") || die "error: $!";
	print myFILE $_[1];
	close(myFILE);
} 

my $conn_addr = "http://www.mail.ru/";

my  $sock = IO::Socket::INET->new(PeerAddr => '75.69.203.194',
                                 PeerPort => 'http(15689)',
                                 Proto    => 'tcp') or die "Can't create Socks: $!";

print $sock "GET ",$conn_addr," HTTP/1.0\n\n";
$answ='';
while($line = <$sock>) {
$answ.=$line;
} 

saveFile('result.html',$answ);
результат:
Цитата:
Can't create Socks: Unknown error at pr2.pl line 13
.
думал.., может прокси дохлий? полошол опять на http://www.checker.freeproxy.ru/checker/last_checked_proxies.php все перепробивал - результат один и тот же((
 
Ответить с цитированием

  #9  
Старый 14.11.2008, 10:23
Аватар для demond
demond
Участник форума
Регистрация: 05.11.2008
Сообщений: 105
Провел на форуме:
292722

Репутация: 71
По умолчанию

попробуй изменить 14-ю строчку на PeerPort => '15689',
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Стартовали продажи 2-ГБ наборов модулей Kingston Technology HyperX PC3-16000 De_Ang Новости мира "железа" 0 03.10.2008 13:19
трабла с установкой ХР на Asus EeePC701(4G) 4uk-4uk Аппаратное обеспечение 4 01.10.2008 23:33
Помогите с установкой Php hackmen PHP, PERL, MySQL, JavaScript 20 17.03.2008 21:08
Помгите с установкой ICQ Pro 5.02 Kamenev ICQ 5 21.08.2005 15:41



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ