(Yellow_Duck)
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
|
|
1 | |
Запросы через Proxy.14.10.2009, 03:15. Показов 5914. Ответов 4
Метки нет (Все метки)
Вообщем столкнулся я с таким:
Нужно, чтобы программа выполняла запросы через Proxy сервер. скрывать не буду: мне нужны обращения к серверу вконтакте. Чтобы не было бана. Так вот: Когда программа делает запрос, ей возвращается какая-то страница, которую нужно спарсить. Логично, что проще всего это сделать с URLDownloadToFile, при которой не грузятся картинки, и вообще все отлично, но я не знаю как здесь сделать чтобы это скачивалось и не было видно твоего ип. Как вариант только что возникла идея использовать idhttp с его ProxyParams, и функцией get() этого объекта. Кто что посоветует? Добавлено через 1 минуту А, еще вот что, как здесь можно организовать много поточность? Скажем у меня есть страницы, на каждой странице только по 20 человек, мне нужно чтобы отдельный поток занимался скачиванием своей страницы.
0
|
14.10.2009, 03:15 | |
Ответы с готовыми решениями:
4
FTP через HTTP proxy Загрузка страниц через корпоративный прокси (Proxy) Post-запросы через Proxy Прорыв через ISA proxy ошибку HTTP/1.1 407 Proxy Authentication Required |
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
14.10.2009, 12:44 | 2 |
Не понял - а что именно должна делать программа ?
Если просто зайти на сервер вконтакте, то достаточно в броузере указать proxy-сервер. Не знаю как в delphi, а в perl html-страница парсится с помощью стандартного модуля LWP. Многопоточность организуется с помощью многопоточного приложения. Порождаешь например 5 потоков (броузер обычно так делает). Каждый поток делает свой коннект на сервер и работает независимо от другого.
0
|
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,888
|
|||||||||||
15.10.2009, 00:56 | 3 | ||||||||||
на мой взгляд, тут можно обойтись и стандартным IdHTTP.
Кстати, тебе будет интересна вот эта моя программка ProxyList. настраиваем прокси
В дельфи многопоточность очень легко реализовать, главное не забывать о синхронизации, и будет все ОК. Для начала, почитай в справочной системе Дельфи - "Writing multi-threaded applications".
1
|
Не осилил Linux
267 / 61 / 6
Регистрация: 06.08.2009
Сообщений: 223
|
|||||||||||
15.10.2009, 20:31 | 4 | ||||||||||
Создаешь в проекте модуль для потока.
В нем создаешь класс наследник от tthread Объявляешь как член класса tidhttp. Переопределяешь метод Execute, заготовка уже будет создана самой дельфи. Не забудь вызывать конструктор idhttp, ибо тут ты его используешь не как компонент, а как обычный класс. Для синхронизации потоков советую использовать критические секции, имхо проще всего это: объявляешь в разделе var раздела implementation переменную: InitializeCriticalSection(CS); Создашь разделы после implementation и прописываешь
Чтобы каждый поток работал со своей страницей, объяви у него соответствующее свойство типа стринг. И при инициализации потоков передавай его значение.
1
|
3071 / 1409 / 425
Регистрация: 19.01.2009
Сообщений: 3,888
|
|
17.10.2009, 14:09 | 5 |
0
|
17.10.2009, 14:09 | |
17.10.2009, 14:09 | |
Помогаю со студенческими работами здесь
5
Notepad++ через Proxy работа через proxy Oracle через Proxy Клики через Proxy Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |