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

выдираете из обоих файлов по регулярному выражению <a href=...></a> нужную ссылку. ну и сравниваете.
...
Рейтинг: 0 / 0
24.05.2005, 10:38
    #33081455
Black
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(Perl) сравнение содержимого файлов
в чем именно трудность-то?
...
Рейтинг: 0 / 0
24.05.2005, 11:30
    #33081608
vidoq
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(Perl) сравнение содержимого файлов
трудность в том, что как это сделать?
т.е. нужно сначало копии файлов где то сохранить, далее откуда то выдирать и выдирать с сохраненных файлов так?!
причем там меню не маленькое...
причем если были изменения нужно смотреть какие были, может какие то урл добавили, а может быть что то убрали наоборот!!!
вот в чем трудность, ну и написать это все как то нужно примерно.
с написанием тоже трудности есть некоторые...
...
Рейтинг: 0 / 0
24.05.2005, 14:41
    #33082244
vidoq
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(Perl) сравнение содержимого файлов
чтобы было понятнее чуток я тут сделал так
Код: 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
24.05.2005, 15:52
    #33082427
g613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(Perl) сравнение содержимого файлов
vidoq
my $request = HTTP::Request->new(GET => '$url'); #вот тут он то ли отказывается читать базу
#толи я не правильно здал переменную...правильно ли она написана? '$url'???


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

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

P.S.

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

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

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

если честно то я даже не в курсе что такое FC...
...
Рейтинг: 0 / 0
25.05.2005, 10:22
    #33083314
vidoq
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(Perl) сравнение содержимого файлов
ну 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
25.05.2005, 11:17
    #33083450
g613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(Perl) сравнение содержимого файлов
vidoq
т.е. нужна авторизация пользователя...как сделать?!

perldoc LWP::UserAgent

искать credentials...
...
Рейтинг: 0 / 0
25.05.2005, 11:23
    #33083458
vidoq
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(Perl) сравнение содержимого файлов
это все ясно, просто я прикручиваю их, а он мне говорит вроде как параметр задан не верно...
как правильно написать знаешь???
именно чтобы не вписать туда логин и пароль, а чтобы запрос выходил на ввод пароля и логина...
...
Рейтинг: 0 / 0
25.05.2005, 11:55
    #33083496
g613
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(Perl) сравнение содержимого файлов
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
25.05.2005, 15:19
    #33083703
vidoq
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(Perl) сравнение содержимого файлов
g613
...кусок кода который отключает эхо на терминале при вводе пароля пусть будет тебе домашним заданием, хотя если есть желание можеш прикрутить туда например Tk тулкит с его окошками...

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


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