Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Сети > Получение информации с сайта со входом на него


Автор: Upgrader 2.10.2008, 15:05
Подскажите какой-нибудь способ, т.е. куда вообще копать, чтобы из своей программы войти на сайт и получить с него некоторую информацию? Для этого еще нужно кликнуть на пару кнопок и ввести пароль, а сделать это нужно именно как реальный ввод, а не передачей параметров в строке адреса например.
С чего начать в таком случае, может есть какой-нибудь специальный уже написанный компонент для этой цели?
Поиск юзал, да. Не нашел ничего подходящего...

Автор: MAKCim 2.10.2008, 18:40
смотри в сторону cURL и плагина Tramper Data для firefox
они полностью решат твою проблему
с помощью последнего смотришь HTTP запросы, через cURL эмулируешь их

Автор: Upgrader 2.10.2008, 19:06
Программа дложна работать на любом компьютере, т.е. там где может не быть firefox и т.п.

Видел подобные программы написанные на delphi, там какой-то компонент используют (тестировал и пользуюсь одной из таких подобных программ, на сколько понял она использует движок IE).

Автор: Rififi 2.10.2008, 20:06
Upgrader
используй интерфейс Windows Internet
Win32 and COM Development -> Networking -> Network Protocols -> Windows Internet

Автор: MAKCim 2.10.2008, 22:44
Цитата(Upgrader @  2.10.2008,  19:06 Найти цитируемый пост)
Программа дложна работать на любом компьютере, т.е. там где может не быть firefox и т.п.

firefox и Tramper Data я привел в качестве примера того, как получить генерируемые браузером HTTP запросы
итоговая программа будет зависеть только от кроссплатформенного cURL

Добавлено через 2 минуты и 38 секунд
Цитата(Rififi @  2.10.2008,  20:06 Найти цитируемый пост)
используй интерфейс Windows Internet

зачем?
cURL даст полную кроссплатформенность конечного приложения

Автор: Zorg200 12.11.2008, 21:46
ого

Автор: J0ker 13.11.2008, 21:04
не используй cURL
используй boost::asio
 smile 

Автор: MAKCim 14.11.2008, 21:00
J0ker
во-первых, почему?
во-вторых, там есть реализация движка HTTP?  smile (если нет, то свой велосипед, во-первых, еще правильно написать и оттестить надо, а во-вторых - сделать это оптимальным образом, я уже молчу про всякие HTTPS, SSL, TLS и т. д)

Автор: J0ker 14.11.2008, 21:54
Цитата(MAKCim @  14.11.2008,  21:00 Найти цитируемый пост)
во-первых, почему?

ну надож было что-то написать  smile 

Цитата(MAKCim @  14.11.2008,  21:00 Найти цитируемый пост)
во-вторых, там есть реализация движка HTTP?

нету

Цитата(MAKCim @  14.11.2008,  21:00 Найти цитируемый пост)
если нет, то свой велосипед, во-первых, еще правильно написать и оттестить надо, а во-вторых - сделать это оптимальным образом

ну я думаю это не просто, а очень просто с boost::spirit

Цитата(MAKCim @  14.11.2008,  21:00 Найти цитируемый пост)
я уже молчу про всякие HTTPS, SSL, TLS и т. д

SSL там присутствует

Автор: MAKCim 15.11.2008, 11:49
J0ker
 smile 
мне просто интересно, зачем предлагать решение, которое изначально не является заточенным под данную задачу?
неужели из-за твоей "любви" к С?  smile 

да, кстати, работу с прокси я там так и не нашел (хотя, может, плохо искал)

Цитата(J0ker @  14.11.2008,  21:54 Найти цитируемый пост)
ну я думаю это не просто, а очень просто с boost::spirit

думать и сделать - это разные вещи
очень часто только лишь приступив к реализации понимаешь, что не все так просто как казалось  smile 

Автор: J0ker 15.11.2008, 18:27
Цитата(MAKCim @  15.11.2008,  11:49 Найти цитируемый пост)
мне просто интересно, зачем предлагать решение, которое изначально не является заточенным под данную задачу?
неужели из-за твоей "любви" к С?

да просто что-бы поболтать  smile 
не кипятись  smile 

Цитата(MAKCim @  15.11.2008,  11:49 Найти цитируемый пост)
да, кстати, работу с прокси я там так и не нашел (хотя, может, плохо искал)

прокси там действительно нету, хотя есть пример для SOCKS4 - весьма тривиальный
про HTTPproxy тут и говорить не о чем

Цитата(MAKCim @  15.11.2008,  11:49 Найти цитируемый пост)
думать и сделать - это разные вещи
очень часто только лишь приступив к реализации понимаешь, что не все так просто как казалось  smile 

вот это как раз спорный вопрос - изучить весьма заточенный под конкретные задачи cURL (а по хорошему еще и написать объектную оболочку), или универсальный boost::asio
с точки зрения затрат времени, я думаю, одно и то-же, а вот с т.з. полезности...

Автор: MAKCim 15.11.2008, 18:59
Цитата(J0ker @  15.11.2008,  18:27 Найти цитируемый пост)
с точки зрения затрат времени, я думаю, одно и то-же, а вот с т.з. полезности... 

по времени сомневаюсь
cURL легок (потому что на С написан  smile )
для использования easy интерфейса (не асинхронного) достаточно 2 функции  smile 
для асинхронной работы 5-6
все они подробно документированы, с примерами
к тому же автор не уточнил, нужна ли ему обектная модель
(хотя ему уже походу все равно  smile )

Автор: jonie 16.11.2008, 18:36
для отслеживания HTTP запросов подойти может и HTTPWatch (http://httpwatch.com/) оно, кстати, решает задачу без программирования.... правда просит денег 8)

Автор: J0ker 16.11.2008, 19:49
MAKCim
ну ок
пускай будет cURL

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)