|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.08.2007, 15:20 | #1 |
Новичок
Джуниор
Регистрация: 16.08.2007
Сообщений: 2
|
Как получить ссылку на файл с файлообенника?
Делаю программу для облегчения использования файлообменного сервера.. Структура файлообменика почти такая же как и у подобных сервисов.. Задача вот в чем: программа получает список ссылок, получает для каждой ссылку картинку с кодом, отправляет код картинки для каждой ссылки, получает ссылку на файл и передает ссылку на файл в какой либо менеждер закачки.
Использую компонент TSwinHTTP, (очень хороший и легкий "транспорт") (http://www.delphilab.ru/ ). Все работает, за исключением одного но: файл загружается, а необходимо избежать этого. У компонента есть события WorkBegin, Work и WorkEnd, ни в одном из этих событий немогу выхватить ссылку на файл. В Indy удалось получить ссылку на файл, но только после получения это файла, что тоже не есть хорошо. Да и подключать Indy к проекту не хочу, слишком тяжелая библиотека.. Если знаете какой нибудь хороший компонент, который бы подошел, пишите! Код с библиотекой Indy 10: procedure TfmMain.Button2Click(Sender: TObject); var Data: TIdMultiPartFormDataStream; CaptchaImg: TMemoryStream; S, CaptchaFile: string; begin CaptchaImg:= TMemoryStream.Create; Data:= TIdMultiPartFormDataStream.Create; S:= idHTTP.Get('http://dsv.data.cod.ru/816135236'); if ExtractLinkToCaptcha(S, CaptchaFile) then begin idHTTP.Get('http://dsv.data.cod.ru' + CaptchaFile, CaptchaImg); CaptchaImg.SaveToFile('C:\cod.png') ; CaptchaImg.Free; imgCaptcha.Picture.LoadFromFile('C: \cod.png'); Data.AddFormField('submit', '1'); Data.AddFormField('code', InputBox('Введите код','','')); Memo1:= idHTTP.Post('http://dsv.data.cod.ru/816135236', Data); Data.Free; end; end; Действия в программе: 1)Открываю страницу http://dsv.data.cod.ru/816135236 2)Выдергиваю ссылку на картинку из текста HTML 3)Отображаю картинку 3)Вводится и отправляется код картинки 4)Получаю файл В браузере все происходит следующим образом: (по аналогии с моими шагами) (подсмотрено снифером) 1)Открываю страницу http://dsv.data.cod.ru/816135236 3)Отправляю код картинки 4)Браузер переходит на страницу с "Ошибкой 302: Файл находится по адресу: адрес_файла" 5)Переходит на "адрес_файла", и начинается закачка.. Буду рад любым советам и предложениям! P.S. Если что то понятно пишите, отвечу! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как зупустить ссылку в IE? | Черничный | Общие вопросы Delphi | 2 | 11.08.2008 20:01 |
Передача массива как ссылку в ф-цию | IgorKr | Общие вопросы C/C++ | 1 | 30.03.2008 14:57 |
Киньте ссылку | xPAL | Свободное общение | 1 | 31.01.2008 14:29 |
Преобразовать форму в ссылку | Pekc | HTML и CSS | 1 | 06.12.2007 20:10 |