![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| Grig |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 809 Регистрация: 29.4.2005 Где: Иркутск Репутация: нет Всего: 16 |
Здравствуйте!
я захожу на сайт скриптом: http://autosunrise.ru/cgi-bin/content.pl
Специально прописываю так:
Но при его запуске, он не отображает рисунки, а они мне позарез нужны!! Видать сервер их как-то хитро блочит. Скажите как можно прикинутся, чтобы обойти эту беду? Еще я много раз читал про то, что народ каким-то образом парсит ответ от сервера, может объясните мне как это сделать? Заранее большое спасибо!! Это сообщение отредактировал(а) Grig - 17.7.2006, 16:34 -------------------- |
||||
|
|||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 8 Всего: 37 |
Рисунки отображает браузер, а не скрипт
А вы запросили эти рисунки? В документе который Вы запросили скорее всего ссылки на рисунки. Вам нужно их выдернуть оттуда и закачать каждую картинку отдельным запросом. HTML же в первом приближении графику содержать не может. Accept означает всего лишь что ваш агент умеет работать с рисунками, и при их наличии они будут пересылаться если вы их запросите. К примеру текстовые броузеры типа links lynx и т.д. не имеют такой возможности и в строке accept не содержат перечисления графических типов файлов. Иногда это указание серверному скрипту, чтобы он генерировал страницу без дизайнерских включений графики, конечно если он это умеет.... -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
| Grig |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 809 Регистрация: 29.4.2005 Где: Иркутск Репутация: нет Всего: 16 |
Странно и непонятно...
Меняю эту строчку:
На эту:
Картинка загружается, но неполностью (( С чем это может быть связано? Вот сравните: http://autosunrise.ru/cgi-bin/img.pl и http://auctions.tokidoki.ru/img/embl-small.gif -------------------- |
||||
|
|||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 8 Всего: 37 |
Это ответ сервера Где у Вас указано что это картинка... скорее всего оно обрабатывается как текст И вона еще одна ошибочка в 3 строке Добавлено @ 20:00 Да и вообще заголовок сильно неправильный, того чего нужно нет, а чего не нужно так валом Длины сообщения и типа не хватает как минимум... -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
| nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 12 Всего: 84 |
а ещё картинка бинарный файлик ;)
пример: binmode(FILEHANDLE); |
|||
|
||||
| Grig |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 809 Регистрация: 29.4.2005 Где: Иркутск Репутация: нет Всего: 16 |
Nab, а каким должен быть ответ сервера, чтобы он позволял видеть картинки?
nitr, к сожалению, не все так просто. Картинки которые мне нужны не имеют статичного адреса. Их, блин, тоже как-то зашифровывают (( Вот например, мне нужны картинки с этого адреса: Которые я пытаюсь получить таким образом:
Хотя бы отобразить их... Подозреваю, что надо как-то обмануть сервер, поэтому и спрашиваю, что еще надо прописать в заголовок.... Помогите, пожалуйста!!! -------------------- |
|||
|
||||
| Nab |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 8 Всего: 37 |
А почему бы Вам не проанализировать заголовок который отдает сервер, с которого Вы берете картинку.
Ведь там вполне корректные заголовки, вот можно их запросто подставить в свой скрипт. А по поводу binmode, то что мешеает выходной поток перевести в бинарный ежим?
Добавлено @ 13:19 Вот корректный заголовок с вашего сервера:
Добавлено @ 13:20 там две части та что cmd> это мой запрос Вас интересует только hdr> -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
||||
|
|||||
| Grig |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 809 Регистрация: 29.4.2005 Где: Иркутск Репутация: нет Всего: 16 |
Возвращает с помощью такого скрипта:
вот это:
Каким образом можно добавить в этот заголовок нужные записи и убрать ненужные? Ссылка на многострадальческий скрипт: http://autosunrise.ru/cgi-bin/content.pl -------------------- |
||||
|
|||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 8 Всего: 37 |
блин, ниче не понял
Это ссылка на страницу, а не на картинку.... и заголовок вполне корректный. что нужно то? -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
| Grig |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 809 Регистрация: 29.4.2005 Где: Иркутск Репутация: нет Всего: 16 |
это ссылка не на страницу, а на скрипт который выкачивает эту страницу.
Вот, например, текст скрипта Надо, чтобы скрипт загружал мне эту страничку с картинками.. Конечно в конечном итоге, мне надо, чтобы скрипт сохранял изображения, но пока хотя бы так.. -------------------- |
|||
|
||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 8 Всего: 37 |
Блин, прикалуетесь?
Объясняю на пальцах: Броузер когда его просят открыть страницу, сначала ее закачивает одним запросом... Потом проанализировав страничку, видит что на ней есть тег IMG берет его src и запрашивает эту картинку, еще одним отдельным запросом. И только потом ее отображает. Прочитайте я писал про текстовые броузеры раньше, которые не работая с графикой, не запрашивают картинок. В одном документе html НЕЛЬЗЯ сразу отдать и картинку и страничку, у них разные URL, да и все разное, в том числе и режим передачи. HTTP протокол так устроен что отдает один документ за раз. Чтобы у Вас на странице была картинка, блин не качайте ее, а просто возьмите ее урл и вставьте в результирующую страничку как <img src="URL">. Это самый простой вариант: Если Вы хотите контролировать полностью весь контент, то там должна быть ссылка не на оригинальную картинку а на Ваш скрипт который только и будет делать что вытаскивать реальные картинки и отдавать их. А вообще, почитайте немного о HTTP, HTML, чего то Вы таки не доучили Это сообщение отредактировал(а) Nab - 23.7.2006, 14:40 -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
| Grig |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 809 Регистрация: 29.4.2005 Где: Иркутск Репутация: нет Всего: 16 |
мда, спасибо большое!
Какого же тогда лешего, все остальные страницы с изображениями в скрипте отображаются нормально, а на этом сайте - нет. Ладно, вот например берем на которую ссылается одна из картинок: http://auctions.tokidoki.ru/pic.php?lot_id...20&pic_id=1 Может быть я правда чего-то не понимаю, но только загрузить ее все равно не могу. В исходном тексте отображается всякая фигня, адрес рисунка не посмотреть ((. Как отобразить его все-таки?!?! Тут висящий в петле и посиневший смайлик -------------------- |
|||
|
||||
| Nab |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 8 Всего: 37 |
Потому как скорее всего на остальных страницах абсолютные ссылки на картинки, а на этой относительные, что в принципе более правильно.
Скорее всего Вам прийдется делать преобразование линков в документе, либо задать базовый урл в начале HTML для всех относительных.Для этого смотрите тег <base> Ну или для преобразования, надо распарситьполученный HTML и в тех местах где есть такие неполные ссылки, дополнить их полным именем с http:// ну и все остальное. Если картинки тоже только через пароль отдаются, то надо написать свой скрипт которые таким же макаром забирали бы картинки. А в самом HTML опять же заменить все эти короткие линки, на такие же но к своему скрипту, который и будет выдергивать картинки с реальных адресов. Вообще то что Вы пишите называется CGI-proxy, и поверьте это очень не тривиальная вещь в особенности если используется JavaScript, а у Вас вообще тяжелый вариант, я там еще Ajax засек Как по мне то это монстр получиться -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
||||
|
|||||
| Grig |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 809 Регистрация: 29.4.2005 Где: Иркутск Репутация: нет Всего: 16 |
Nab, да я уже понял, что задачка не из легких ((
и к тому же это у меня первая работа на Перл, но по-моему дело не в этом, а в том, что там действительно защит стоит дофигища. Тебе спасибо большое за желание помочь!! Добавлено @ 15:23 Да вот еще: хорошо бы если б рисунки содержали ссылки на самих себя, а то ведь они ссылаются на скрипт, который генерит отображение рисунка, а исходный текст странички посмотреть не представляется возможным... задачка. -------------------- |
|||
|
||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 8 Всего: 37 |
Так а что Вам мешает подставлять эти же ссылки, но правильным образом измененные...?
Это сообщение отредактировал(а) Nab - 23.7.2006, 15:28 -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
![]()
|
| Правила форума "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. |