Поиск по блогу

понедельник, 15 ноября 2010 г.

Delphi: работа с cURL с помощью библиотеки-обертки Curlpas

Indy и Synapse вам надоели? Самое время попробовать что-нибудь новенькое :)

Если кто-нибудь, начитавшись статей про cURL (я писала не раз про работу с cURL в PHP), решит попробовать работать с этой библиотекой и в Delphi, то ничего сложного в этом нет.

Установка CURL и работа с этой библиотекой в Delphi 7


1. Скачиваем файлы библиотеки libcurl с сайта разработчика по ссылке. Из всего разнообразия выбираем те, что подходят для нашей операционки. В моем случае это:
libcurl для Windows

Содержимое папки bin из скачанного архива копируем в C:\WINDOWS\system32\. Там несколько файлов dll:
Файлы библиотеки libcurl

2. Скачиваем готовую библиотеку-обертку CurlPas для работы с libcurl.

3. Распаковываем архив куда-нибудь, например, в C:\Program Files\Borland\Delphi7\Source\Curlpas\. Обратите внимание, в архиве есть еще документация и примеры использования (папка demo).

4. Запускаем батник Makewin.bat с параметром src (или all, чтобы уж не мелочиться :) ).

Смотрим лог выполнения инструкций. Там должно быть что-то вроде "все успешно" по каждой директиве.

5. Можно приступать к тестированию библиотеки. Создаем приложение.

В uses прописываем:
uses
... curlobj;


Помещаем на форму кнопку, в обработчике нажатия пишем код:
procedure TForm1.Button1Click(Sender: TObject);
var
Curl: TCurl;
begin
Curl := TCurl.Create(nil);
Curl.URL := 'http://parsing-and-i.blogspot.com/';
Curl.OutputFile := 'curl.html';
if not Curl.Perform then
ShowMessage(Curl.ErrorString);
Curl.Free;
end;

Запускаем. Все должно без проблем скомпилиться, в итоге после нажатия кнопки в папке с проектом появится файл curl.html с html-кодом главной страницы моего блога :)

Возможные ошибки при установке Curlpas


По каким-то причинам могут не "подхватиться" библиотеки. Тогда после запуска приложения может появиться что-то типа такого сообщения:
Приложению не удалось запуститься, поскольку libcurl-3.dll не был найден. Повторная установка приложения может решить эту проблему.

Ошибка при установке libcurl в Delphi
Если компилятор запрашивает файл libcurl-3.dll, а в скачанном пакете libcurl у вас файл называется libcurl.dll (зависит от версии библиотеки), то найдите файл curl_h.pas (из папки C:\Program Files\Borland\Delphi7\Source\Curlpas\src\, если вы устанавливали по моей инструкции) и в нем исправьте название файла.

Потом перекомпилируйте библиотеку.

Если не находятся какие-то другие dll — еще раз проверьте их наличие в System32 (или другом каталоге, как у вас принято).

Вот, в общем-то, и все — установка завершена, можете работать с библиотекой дальше. В папке doc — достаточно полная документация. А онлайн документация есть здесь.
___

Чтобы быть в курсе обновлений блога, можно подписаться на RSS.

среда, 10 ноября 2010 г.

И снова с вами...

Два месяца не появлялась, на то были причины. Понемногу начну исправляться: разгребать почту, чистить комменты (очень много спама, а я по старинке привыкла доверять людям и захожу по каждому адресу, указанному комментаторами), смотреть зафоловивших меня в твиттере. Писем в ящике, указанном в профиле, очень много. Это мой неосновной ящик, поэтому только-только добралась. Даже не знаю, как поступить: отвечать или не отвечать на "старые" предложения (наверное, у них уже вышел "срок годности". Тут дилема: предстать невежливой или предстать тормозом :) ).

Начало осени было очень насыщенным: периоды интенсивной работы чередовались с интенсивным же отдыхом. Съездили с мужем отдохнуть в Таиланд. Несколько фоток.

Одно из "обычных состояний" — с картой в руках. Я — навигатор :)
Тайланд, Бангкок
Я и кузнечик: кто кого?
Паттайя. Кузнечик
Ну и широко известные тайские мальчики-девочки. Это самые "очевидные". Большинство же такие, что для идентификации надо приглядеться :)
Тайские девочки (в кавычках)
Фотографий привезли — море. Но здесь им, конечно, не место :)

Замечательная страна. Всерьез подумываем поселиться там и пожить некоторое время. Естественно, что для этого надо трудиться и налаживать источники доходов, не привязанные к месту жительства. В принципе, чем мы сейчас и занимаемся.

Парсеры на заказ в настоящее время не пишу, обращаться не стоит. Пишу приложения для торговли на бирже с использованием QuikOrdersDOM SDK (SDK для работы с Квиком). Занимаюсь своими проектами (это как раз относится к "налаживанию источников дохода", о котором упоминалось в предыдущем абзаце). Для своих проектов программирую по мелочам, так что, в принципе, писать на блоге есть о чем — в ближайшем будущем посты ожидаются :)

Товарищи! По поводу RSSAdder-а. В свое время я обещала постовые всем, кто напишет обзор у себя на блогах. Я про это не забыла, только вот вычислить написавших мне трудно: blogger не показывает, а самой мне искать совсем некогда. Оставляйте в комментах ссылки на обзоры — все обещанные постовые будут размещены в новых записях на этом блоге.

___

Зачем тянуть с объявлением благодарностей? :) Спасибо artcher-у, автору блога "Web как философия жизни" за прекрасный обзор RSSAdder-а с картинками!

Так же спасибо SeoZIP-у ) Желаю удачи в развитии блога!
___

Чтобы быть в курсе обновлений блога, можно подписаться на RSS.

Поделиться