powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (Perl) сравнение содержимого файлов
17 сообщений из 17, страница 1 из 1
(Perl) сравнение содержимого файлов
    #33081182
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго всем дня.
Есть такая проблемка.
Имеется меню, они написаны то на html то на asp то на pl.
но стандартно все ссылки выводятся через <a href=...></a>.
Вопрос, нужно сравнивать эти меню \причем сравнивать только ссылки, бинарное сравнение файлов не подходит, т.к. я его уже реализовал но оно не устраивает начальство...\.
Как??? вообще возможно ли это реализовать на перле?
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33081437
salt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Легко.

выдираете из обоих файлов по регулярному выражению <a href=...></a> нужную ссылку. ну и сравниваете.
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33081455
Фотография Black
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в чем именно трудность-то?
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33081608
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
трудность в том, что как это сделать?
т.е. нужно сначало копии файлов где то сохранить, далее откуда то выдирать и выдирать с сохраненных файлов так?!
причем там меню не маленькое...
причем если были изменения нужно смотреть какие были, может какие то урл добавили, а может быть что то убрали наоборот!!!
вот в чем трудность, ну и написать это все как то нужно примерно.
с написанием тоже трудности есть некоторые...
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33082244
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чтобы было понятнее чуток я тут сделал так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
#печатаем меню
    print "<li><a href=$Data{url_menu} target=_blank>$Data{menu}</a>";
#переменные меню из хэша
    my $url = "$Data{'url'}";
    my $menu = "$Data{'menu'}";
    my $s_url = "$Data{'s_url'}";
    my $url_menu = "$Data{'url_menu'}";
#далее подключаем скачивание файлов
    my $ua = LWP::UserAgent->new;
    my $request = HTTP::Request->new(GET => '$url'); #вот тут он то ли отказывается читать базу
#толи я не правильно здал переменную...правильно ли она написана? '$url'???
    my $response = $ua->request($request);

    if ($response->is_success) {
#создаем файл куда из хэша все записывается и с чем потом сравнивается
         open FP, ">newfile" ;
    print FP $response->content;
    close FP ;
#стандартное виндовое сравнение и вывод результата, чем отличаются файлы
    print `fc $Data{s_url} newfile` ;

  } else {
      print "Bad luck this time\n";
  }

сейчас стоит вопрос, нормальный ли это метод - 1
как сделать авторизацию для пользователей - 2 \т.е. меню огранниченое не для всех, а у некоторых есть полный доступ, так что нужно чтобы скрипт запрашивал пароль а далее этот пароль везде уже для доступа пихал и получал ответ\
как сделать?!?!
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33082427
g613
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vidoq
my $request = HTTP::Request->new(GET => '$url'); #вот тут он то ли отказывается читать базу
#толи я не правильно здал переменную...правильно ли она написана? '$url'???


нет. правильно просто $url, в крайнем случае "$url"

К вопросу о сравнении - немаленькие меню, это сколько ?

P.S.

закладываться на `стандартное виндовое` сравнение несколько не хороший стиль...
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33082871
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ок с url понятно!
не маленький ну это примерно 120-130 подпунктов.
т.е. придется проверять абсолютно все.
такой вариант меня мало чем устраивает, но все таки нужно как то это реализовать.
что можно придумать?!?!
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33082958
g613
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по мне так пару мегабайт - небольшой...

http://search.cpan.org/~rbs/Text-Diff-0.35/lib/Text/Diff.pm

не подходит ?
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33083180
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну не очень большой, но пунктов не мало.
интересный конечно способ, но ... все же как то не то!
ты сам то не вкурсах как к FC прикрутить basic authentification?!
что нормально моно авторизовываться на всех сайтах поб определенным логином.
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33083307
g613
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vidoq
ты сам то не вкурсах как к FC прикрутить basic authentification?!
что нормально моно авторизовываться на всех сайтах поб определенным логином.

если честно то я даже не в курсе что такое FC...
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33083314
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну FC это и есть file compare \виндовый только\
вот же он
#стандартное виндовое сравнение и вывод результата, чем отличаются файлы
print `fc $Data{s_url} newfile` ;

хотя тут я сам смудил, к нему не надо ничего прикручивать...
прикрутить нужно к вот этому:
my $ua = LWP::UserAgent->new;
my $request = HTTP::Request->new(GET => $url);
my $response = $ua->request($request);

т.е. нужна авторизация пользователя...как сделать?!
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33083450
g613
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vidoq
т.е. нужна авторизация пользователя...как сделать?!

perldoc LWP::UserAgent

искать credentials...
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33083458
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это все ясно, просто я прикручиваю их, а он мне говорит вроде как параметр задан не верно...
как правильно написать знаешь???
именно чтобы не вписать туда логин и пароль, а чтобы запрос выходил на ввод пароля и логина...
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33083496
g613
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vidoqэто все ясно, просто я прикручиваю их, а он мне говорит вроде как параметр задан не верно...
как правильно написать знаешь???
именно чтобы не вписать туда логин и пароль, а чтобы запрос выходил на ввод пароля и логина...

спросить их самому ???

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
my $ua = LWP::UserAgent->new;
my $request = HTTP::Request->new('GET', 'http://localhost/tests/auth/env.cgi');

print "User NAme for [ localhost:80 ] : ";
$uname = <STDIN>;
chomp $uname;

print "Password for [ $uname ] : ";
$pass = <STDIN>;
chomp $pass;

$ua->credentials('localhost:80', 'for test', $uname, $pass );
my $response = $ua->request($request);

...кусок кода который отключает эхо на терминале при вводе пароля пусть будет тебе домашним заданием, хотя если есть желание можеш прикрутить туда например Tk тулкит с его окошками...
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33083703
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
g613
...кусок кода который отключает эхо на терминале при вводе пароля пусть будет тебе домашним заданием, хотя если есть желание можеш прикрутить туда например Tk тулкит с его окошками...

хахаха, тебе смешно, а блин я этот перл юзаю всего неделю!
блин)))) лано будем думать, и на этом ОГРОМНОЕ тебе СПАСИБО.
если будут вопросы, конечно же я сюда вернусь)))
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33084046
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
странно но нефига не работает...
ничего не говорит... как отладку провести?
localhost:80 обязательно писать так как есть или что то другое туда вписывать?
...
Рейтинг: 0 / 0
(Perl) сравнение содержимого файлов
    #33086479
vidoq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
нааааааааааароооод помогите плиз, у меня уже все готрит а нефига ничего не рабоотает!
пробывал разные способы, авторизация не проходит:(
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (Perl) сравнение содержимого файлов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]