ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование_OLD > PHP, PERL, MySQL, JavaScript
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #21  
Старый 22.02.2008, 22:33
bul.666
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме:
3986705

Репутация: 1403


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

Цитата:
^^
C:\Perl\bin>perl scr/reg.pl
Bareword found where operator expected at scr/reg.pl line 6, near "m/<A>(.+)<(ba
ckslash)/A"
Unquoted string "backslash" may clash with future reserved word at scr/reg.pl li
ne 8.
syntax error at scr/reg.pl line 6, near "m/<A>(.+)<(backslash)/A"
Search pattern not terminated at scr/reg.pl line 8.

Цитата:
(backslash)
А не легче экранировать?
<\/DIV>

Цитата:
my $s='<html> <head> <title>PERL regexp</title> </head>
<body> <h1>File where I serach text</h1>
<DIV>I NEED THIS TEXT</DIV>
</body>
</html>';
print "Result : $1 " if $s=~/<DIV>(.+)<\/DIV>/;
Более ч0ткий пример (c) demonoid

Последний раз редактировалось bul.666; 22.02.2008 в 22:39..
 

  #22  
Старый 22.02.2008, 22:46
Piflit
Banned
Регистрация: 11.08.2006
Сообщений: 1,522
Провел на форуме:
5128756

Репутация: 2032


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

Цитата:
Сообщение от bul.666  
C:\Perl\bin>perl scr/reg.pl
Bareword found where operator expected at scr/reg.pl line 6, near "m/<A>(.+)<(ba
ckslash)/A"
Unquoted string "backslash" may clash with future reserved word at scr/reg.pl li
ne 8.
syntax error at scr/reg.pl line 6, near "m/<A>(.+)<(backslash)/A"
Search pattern not terminated at scr/reg.pl line 8.
бугага. в теге [php] бэкслеши '\' не отображаются, поэтому я заменил его словом. еще раз бугага
 

  #23  
Старый 22.02.2008, 22:47
Spyder
Members of Antichat - Level 5
Регистрация: 09.10.2006
Сообщений: 1,698
Провел на форуме:
9098076

Репутация: 4303


По умолчанию

ыыы, backslash
\/
 

  #24  
Старый 22.02.2008, 23:02
bul.666
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме:
3986705

Репутация: 1403


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

Пиф ты вообще свой код проверял? Меня очень сильно возбудила 8 линия ^^ +)

Последний раз редактировалось bul.666; 22.02.2008 в 23:07..
 

  #25  
Старый 22.02.2008, 23:26
Piflit
Banned
Регистрация: 11.08.2006
Сообщений: 1,522
Провел на форуме:
5128756

Репутация: 2032


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

Цитата:
s/<A (.+)<(backslash)/A>//igs;
вот так =)
это если надо тереть линки.
я просто немного переписал твой код. я хз че он должен делать =))
 

  #26  
Старый 23.02.2008, 03:20
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

Код:
s/<A (.+)\\/A>//igs;
 

  #27  
Старый 23.02.2008, 03:58
bul.666
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме:
3986705

Репутация: 1403


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

Он должен выдерать текст между <div> и </div>
 

  #28  
Старый 23.02.2008, 04:49
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

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

как понял начало нужно написат парсер выдирающий из страницы нужное нам значение.
возбмём в пример яндэкс например нам нужно узнать значение id из этой строки (17 строка ответа)
</script><table id=head><tr> итд .....
и отправить запрос с этим значением запрос скажем запрос будет
http://www.yandex.ru/yandsearch?text=значение


Код:
use Socket;

$host="www.yandex.ru";
$port="80";

socket(SOCK, PF_INET, SOCK_STREAM, getprotobyname('tcp'));

$iaddr = inet_aton($host);
$paddr = sockaddr_in($port, $iaddr);

connect(SOCK, $paddr);
send (SOCK, "GET / HTTP/1.0\n\n", 0);

@data=<SOCK>; # ответ сервера
close(SOCK);

$fullitself=@data[17]; # считаем в какой строке ответа нужное нам значение она 17тая

@temp=split('table id=',$fullitself); # table id= это символы которые идут перед нашим значением
@semp=split('>',@temp[1]); # > а этот символ после нашего значения 
$id =  @semp[0]; # и так наше значение это переменная $id









connect(SOCK, $paddr);
send (SOCK, "GET /yandsearch?text=",$id," HTTP/1.0\n\n", 0); #отправляем запрос

@data2=<SOCK>;
close(SOCK);

 # извените если гденибуть ошибся, не проверял
но вот если позиция строки постоянно меняется в ответе нужно будет ещё писать цикл который будет находить эту строку переберая каждую в этом массиве.

но намного легче это будет реализовать в пхп так как там есть специальная функция которая исчет ключ по значению array_search(" значение", $массив);

Последний раз редактировалось ZET36; 23.02.2008 в 05:15..
 

  #29  
Старый 23.02.2008, 05:04
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

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

и к тому же поле "Город" там нефильтруется. активнаяя хсс
 

  #30  
Старый 23.02.2008, 08:55
bul.666
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме:
3986705

Репутация: 1403


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

Код:
use Socket;

$host="www.yandex.ru";
$port="80";

$NEED_STR = "<table id=__STRING__>"; #Строка поиска

@parse_need = split("__STRING__",$NEED_STR);
#print @parse_need[1];
socket(SOCK, PF_INET, SOCK_STREAM, getprotobyname('tcp'));

$iaddr = inet_aton($host);
$paddr = sockaddr_in($port, $iaddr);

connect(SOCK, $paddr);
send (SOCK, "GET / HTTP/1.0\n\n", 0);

@data=<SOCK>; 
close(SOCK);

$size = @data;
for ($i=0;$i<$size;$i++) {
$fullitself=@data[$i]; 

@temp=split(@parse_need[0],$fullitself); 
@semp=split(@parse_need[1],@temp[1]); 
$id =  @semp[0];
}

if ($id) {
print "\n\n[!] FOUND STRING: '$id'\n\n";
}else {
print "\n\n[!] NOT FOUND\n\n";
}
Вот кстати небольшой тюнинг твоего скриптенга:
$NEED_STR = "<table id=__STRING__>";

Тут вводишь строку которую надо искать;
__STRING__ Отмечено место, где будет выдран текст для вставки в $id
 
 





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


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




ANTICHAT.XYZ