Здраствуйте. Для личной практики и интереса хочу написать Open Source клиент для одного сайта, но если честно понятия не имею как, хотя есть некоторая информация, которою получил от более знающих людей.
Работать с сайтом, как с библиотекой не получится, работать с ним придётся с помощью парсирования HTML кода, который он генерирует после загрузки страницы, а также посылать ему информацию с помощью методов GET и POST. Я был бы очень признатален, если кто-нибудь подскажет библиотеку, которая умеет делать подобные вещи или хотя бы направить в нужную сторону.
Написание клиента для какого-нибудь сайта (С++)
Модератор: Модераторы разделов
-
Assuri
- Сообщения: 678
- Статус: #include <brain.h>
- ОС: Fedora 12
-
d_n_k
- Сообщения: 636
- ОС: Gentoo GNU/Linux
Re: Написание клиента для какого-нибудь сайта
если сайт поддерживает какое-нибудь апи, то с ним можно и как с библиотектой работать, ты у него спрашиваешь - он реагирает.
либо ты реализуешь фукнциональность браузера и как-то влияешь из своего приложения на него из своего приложения.
те в брайзер грузится что-то на j-скрипте, а из твоего прилоджения в виртуальную машину j-скрипта ложатся какие-либо данные и ниточки за которые ты потом дергаешь.
примерчик: в браузер грузится страничка в картой от гуугла, а потом вызываются функции для прокручивания карты.
реализация будет зависить от использаемого движка браузера.
либо ты реализуешь фукнциональность браузера и как-то влияешь из своего приложения на него из своего приложения.
те в брайзер грузится что-то на j-скрипте, а из твоего прилоджения в виртуальную машину j-скрипта ложатся какие-либо данные и ниточки за которые ты потом дергаешь.
примерчик: в браузер грузится страничка в картой от гуугла, а потом вызываются функции для прокручивания карты.
реализация будет зависить от использаемого движка браузера.
все сказанное есть имхо...
-
Assuri
- Сообщения: 678
- Статус: #include <brain.h>
- ОС: Fedora 12
Re: Написание клиента для какого-нибудь сайта
А каким образом я могу использовать это API? Ведь я как-то до API должен достать из своего приложения, но каким образом?
либо ты реализуешь фукнциональность браузера и как-то влияешь из своего приложения на него из своего приложения.
те в брайзер грузится что-то на j-скрипте, а из твоего прилоджения в виртуальную машину j-скрипта ложатся какие-либо данные и ниточки за которые ты потом дергаешь.
Я думаю, что можно немного проще: обрабатывать html код, переданный сервером браузеру, а совершать какие-либо действия с сайтом можно передавая в него ссылками (GET method) или методом POST.
Я обнаружил, что в Qt4 есть классы QHttp и QUrl, которые скорее всего могут дать то, что мне надо, хотя не уверен.
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: Написание клиента для какого-нибудь сайта
как правило это описано в описании API. В качестве неплохого примера можешь посмотреть на API который дает Google для своих апликейшинов: http://code.google.com
тут все зависит от того что ты хочешь сделать. если например залогинится на не очень сложный сайт и пройтись по его ссылкам, вытаскивая нужные тебе данные - то вполне можно QHttp это сделать(насколько я помню описание этого класса). Правда, как по мне, использование С++/Qt в этом деле несколько избыточно, и проще скриптовыми языками пользоваться. Для perl'а например есть хорошо развитая библиотека LWP::*, думаю для питона тоже что-то похожее найдется.
-
whirlwind
- Сообщения: 67
Re: Написание клиента для какого-нибудь сайта
вспомнился типограф http://www.artlebedev.ru/tools/typograf/webservice/ Собственно там пример, как работать и их сайтом(сервисом). Вдруг у вас так же
Добро всегда побеждает зло. Мы победили, значит мы - добро.
-
grub
- Сообщения: 128
- ОС: Slackware 12.0
Re: Написание клиента для какого-нибудь сайта
А зачем Си? Нет мне самому Си больше по душе. Но если надо быстро и универсально, то лучше использовать Perl. Научиться на нем писать (базовые понятия), надо потратить один вечер, а дальше двигаем на cpan.org и качаем необходимые модули. К слову они есть почти для всего... Например работа с сайтами это LWP - все делается быстро и красиво ))
Perl + HTTP + JavaScript - вот мой топик. Ответа я на него так и не получу по видимому, но исходные данные для написания "какого-нибудь" клиента есть...
Perl + HTTP + JavaScript - вот мой топик. Ответа я на него так и не получу по видимому, но исходные данные для написания "какого-нибудь" клиента есть...