![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| Гость_Alex |
|
|||
|
Unregistered |
Не подскажете как отследить обновление архивов?
Периодическая закачка с помощью LWP и сравнение размеров файлов не подойдет... (Архивы могут быть достаточно большими) Можно ли как-нибудь получить время модификации архива? |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Что ты подразумеваешь под словом архив???
Это сообщение отредактировал(а) korob2001 - 22.5.2005, 09:42 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Alex |
|
|||
|
Unregistered |
*.zip
*.rar На данный момент меня интересуют файлы указанных форматов. Хотя вопрос можно и обобщить. В общем случае это может относиться и к фаилам *.mp3 и т.д (размеры которых в среднем от 500К и выше). Маленькие файлы, в крайнем случае, можно периодически заливать к себе и сравнивать размеры старого и нового. Хотя это тоже не самый лучший выход. А как поступить с большими файлами (меня интересуют файлы до 5 метров)? Здесь начинаешь ценить время с учетом последующей обработки и ограничения на время работы скрипта. Плюс (возможно) оплата трафика. Тогда уж точно часто закачивать большие файлы не получится... |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Попробуй это:
В переменной будет сохранено время в секундах с начала эпохи, последней модификации файла. Это сообщение отредактировал(а) korob2001 - 22.5.2005, 23:01 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Alex |
|
|||
|
Unregistered |
Я так уже пробовал
Так можно отследить только время модификации своих файлов (на своем компе или в домене, если запустить там же скрипт) А мне надо узнать время модификации файлов независимо от того, где они лежат... Может, правда, я что-то не так делаю, но
ничего не выдает |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Хех
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Alex |
|
||||||
|
Unregistered |
В принципе ведь можно посмотреть время модификации файлов, если загружать их не в лоб, а, например, указав в строке адреса браузера только путь к папке. Разумеется, если доступ открыт. Значит должно быть возможно получение этого времени программно.
Хочу сделать что-то вроде сборника прайс-листов. Вернее работа уже идет. Теперь понемногу оптимизирую код.
Наверняка есть. Только я до него пока не дошел. Причем есть по крайней мере один сайт по такой же тематике. Там ребята размахнулись не по-детски. Уже пару лет как с этим работают. У меня запросы поскромнее - немного другие планы на это, но как знать |
||||||
|
|||||||
| korob2001 |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
http://host.ru/struct/archive/ Это ещё не значит что ты обращаешься к каталогу, просто сервер настроен так, что когда ты указываешь такой путь, то запускается определённый скрипт, который тебе и выдаёт информацию. Это делается как правило, что бы скрыть пути такого вида: http://host.ru/struct/erchive/archive.pl?id=021242&sid=1245145633&act=show Причины для такого сокрытия могут быть разные. Вобщем папка не вернёт тебе время обновления архивов, которые находятся в ней. Или я тебя не допонял или ты не допояснил задачи.
Т.е. ты грузишь архивы на сервер. Наверное для того, что бы потом можно было их как-то оттуда скачать??? Если да, то ты должен их как-то выводить, например в html код, где юзер может нажать на ссылку и скачать архив. Как правило, это делает программа написанная на серверном языке: Perl, PHP, ASP и т.д. Вот она, при генерации ссылок пусть и узнаёт время последнего обновления архива и выдаёт его на той же странице. Или я опять не верно понимаю??? -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
||||
|
|||||
| Sadok |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 74 Регистрация: 2.11.2004 Репутация: 1 Всего: 2 |
Я думаю, wget (возможно curl, не работал с ним) спасет отца русской демократии. Тут же надо анализировать ответы серера (Last-modified, например)
Это сообщение отредактировал(а) Sadok - 24.5.2005, 08:48 |
|||
|
||||
| wladk |
|
|||
|
Unregistered |
Пример из книги
Network Programming with Perl http://www.modperl.com/perl_networking/
Делает, помоему, то что тебе надо, закачивает документ с сервера на локальную машину, если только документ на серверее имеет более позднюю дату изменения, чем локальный. |
|||
|
||||
| Гость_Alex |
|
||||
|
Unregistered |
Если указать данный путь, выдается что-то вроде Name Last modified Size Description -------------------------------------------------------------------------------- Parent Directory 12-May-2005 06:22 - f1.htm 18-May-2005 08:00 22k f10.htm 18-May-2005 08:00 24k f11.htm 18-May-2005 08:00 24k .................................................................
Я гружу их на сервер, потом парсю и оставляю в *.csv формате для запросов пользователей... На счет последующих советов - большое спасибо, попробую, может что-нибудь да выйдет... Если нет, еще раз к Вам обращюсь |
||||
|
|||||
| Гость_Alex |
|
|||
|
Unregistered |
На счет первого совета:
Скорее всего не спасет Я еще с ним не возился, хотя судя по возможностям (сегодня просмотрел документацию) полезная программка. Однако есть два нюанса: 1) при проверке обновления он сравнивает дату сохраненного файла и закачиваемго. Таким образом необходимо у себя держать архивы. А их размеры сопоставимы с размерами полученных после обработки *.csv-файлов. Если архивов немного, тогда без разницы, в противном случае..... 2) Т.к. это прайс-листы, то имена архивов бывает, что совпадают (например, price.zip). При этом их придется размещать по разным папкам, а это лиший напряг. Его тоже, в принципе, можо решить, но должно же быть более тривиальное решение!!! Может, правда, не нашел того, что нужно, но остается надеяться на второй вариант, хотя сходу он не пошел. Ждите завтра с новыми вопросами либо с положительным результатом |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
При загрузке на сервер, генерируй новое имя архиву, и избавишься от проблемы указанной во втором пункте.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Гость_Alex |
|
|||
|
Unregistered |
Пробовал еще вчера вечером, но в оношении wget я так и не нашел - позволяет ли он изменять имя файла. Однако по крайней мере это позволяет сделать приведенный выше перловский код. Таким образом, в итоге на одну проблему меньше. Однако другая проблема осталась: при проверке обновления происходит сравнение дат сохраненного файла и закачиваемго. А следовательно, как я выше говорил, удваивается потребляемое пространство, что на определенном этапе все равно потребует решения!!! Как тут ни крути! Вопрос остался вопросом, хотя кое-какие продвижения все-таки есть |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Гость_Alex - ну ты и намутил воды.
Я нифига не врубаюсь в смысл всего этого. Вот как я тебя понимаю: Есть некоторый хост, на который кто-то заливает архивы, так же он ( кто-то ) может проматривать список архивов и скачивать их. Я тебя правильно понимаю??? Или эти архивы разбросаны по сети??? Это сообщение отредактировал(а) korob2001 - 27.5.2005, 06:50 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
![]()
|
| Правила форума "Perl: CGI программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: разработка для Web | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |