(Yellow_Duck)
 Аватар для MadMag
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733

Запросы через Proxy.

14.10.2009, 03:15. Показов 5957. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообщем столкнулся я с таким:
Нужно, чтобы программа выполняла запросы через Proxy сервер. скрывать не буду: мне нужны обращения к серверу вконтакте. Чтобы не было бана. Так вот: Когда программа делает запрос, ей возвращается какая-то страница, которую нужно спарсить. Логично, что проще всего это сделать с URLDownloadToFile, при которой не грузятся картинки, и вообще все отлично, но я не знаю как здесь сделать чтобы это скачивалось и не было видно твоего ип.
Как вариант только что возникла идея использовать idhttp с его ProxyParams, и функцией
get() этого объекта. Кто что посоветует?

Добавлено через 1 минуту
А, еще вот что, как здесь можно организовать много поточность?
Скажем у меня есть страницы, на каждой странице только по 20 человек, мне нужно чтобы отдельный поток занимался скачиванием своей страницы.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.10.2009, 03:15
Ответы с готовыми решениями:

FTP через HTTP proxy
Здравствуйте, уважаемые форумчане. Пишу FTP клиент подключающийся к FTP серверу через HTTP Proxy (UserGate5). Проблемма в следующем: ...

Загрузка страниц через корпоративный прокси (Proxy)
Добрый день! Мучаюсь уже несколько дней, и никак не могу выйти в просторы интернета в свой программе. Пишу программу на работе. доступ...

Post-запросы через Proxy
Вот код: import urllib import urllib2 import requests url = 'https://auth.mail.ru/cgi-bin/auth?from=splash' password = '*****'...

4
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
14.10.2009, 12:44
Не понял - а что именно должна делать программа ?
Если просто зайти на сервер вконтакте, то достаточно в броузере указать proxy-сервер.

Не знаю как в delphi, а в perl html-страница парсится с помощью стандартного модуля LWP.

Многопоточность организуется с помощью многопоточного приложения.
Порождаешь например 5 потоков (броузер обычно так делает). Каждый поток делает свой коннект на сервер и работает независимо от другого.
0
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,892
15.10.2009, 00:56
Цитата Сообщение от MadMag Посмотреть сообщение
что проще всего это сделать с URLDownloadToFile
на мой взгляд, тут можно обойтись и стандартным IdHTTP.

Кстати, тебе будет интересна вот эта моя программка ProxyList.

настраиваем прокси
Delphi
1
2
    IdHTTP1.ProxyParams.ProxyPort   := Port;
    IdHTTP1.ProxyParams.ProxyServer := Host;
и обращаемся с GET запросом
Delphi
1
2
3
var buff : string;
// ...
buff := IdHTTP1.Get('http://site.com');
Парсим, что у нас получилось в buff.

В дельфи многопоточность очень легко реализовать, главное не забывать о синхронизации, и будет все ОК. Для начала, почитай в справочной системе Дельфи - "Writing multi-threaded applications".
1
Не осилил Linux
 Аватар для =OutlaW=
267 / 61 / 6
Регистрация: 06.08.2009
Сообщений: 223
15.10.2009, 20:31
Цитата Сообщение от MadMag Посмотреть сообщение

Добавлено через 1 минуту
А, еще вот что, как здесь можно организовать много поточность?
Скажем у меня есть страницы, на каждой странице только по 20 человек, мне нужно чтобы отдельный поток занимался скачиванием своей страницы.
Создаешь в проекте модуль для потока.
В нем создаешь класс наследник от tthread
Объявляешь как член класса tidhttp.
Переопределяешь метод Execute, заготовка уже будет создана самой дельфи.
Не забудь вызывать конструктор idhttp, ибо тут ты его используешь не как компонент, а как обычный класс.
Для синхронизации потоков советую использовать критические секции, имхо проще всего это:
объявляешь в разделе var раздела implementation переменную:
InitializeCriticalSection(CS);
Создашь разделы после implementation и прописываешь
Delphi
1
2
3
4
initialization
  InitializeCriticalSection(CS);
finalization
  DeleteCriticalSection(CS);
В процедуре execute где происходит обращение к главной форме вызываешь критическую секцию, например:
Delphi
1
2
3
       EnterCriticalSection(CS);
            Form1.sMemo2.Lines.Add('OK');
        LeaveCriticalSection(CS);
Вуаля, экземпляр потока готов.

Чтобы каждый поток работал со своей страницей, объяви у него соответствующее свойство типа стринг.
И при инициализации потоков передавай его значение.
1
Эксперт С++
 Аватар для schdub
3073 / 1411 / 425
Регистрация: 19.01.2009
Сообщений: 3,892
17.10.2009, 14:09
Цитата Сообщение от MadMag Посмотреть сообщение
организовать много поточность?
http://www.cyberguru.ru/progra... reads.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.10.2009, 14:09
Помогаю со студенческими работами здесь

Прорыв через ISA proxy ошибку HTTP/1.1 407 Proxy Authentication Required
мой клиент на си++ по http протоколу общается с моим же сервром. Если на пути тупое прокси, то всё работает, но если через ISA - кабздец,...

Notepad++ через Proxy
Поделитесь, кому нибудь удалось подключить Notepad++ к FTP через прокси?.. Добавлено через 5 часов 36 минут Народ, нашел одно...

работа через proxy
всем привет, пишу на c++ небольшой клиентик,как в нем реализовать работу через proxy? зарание спосибо.

Oracle через Proxy
Господа Я в интранете Сервер в интернете каким приложеним Oracle могу администрить этот сервер Oracle выход в интернет через...

Клики через Proxy
Здравствуйте, подксажите возможно ли кликать по партнёркам меняя IP-адрес через Proxy Switcher, если нет то подскажите другой способ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Как использовать Bluetooth-модуль HC-05 с Arduino
Wired 08.07.2025
Bluetooth - это технология, созданная чтобы заменить кабельные соединения. Обычно ее используют для связи небольших устройств: мобильных телефонов, ноутбуков, наушников и т. д. Работает она на частоте. . .
Руководство по структурам данных Python
AI_Generated 08.07.2025
Я отчетливо помню свои первые серьезные проекты на Python - я писал код, он работал, заказчики были относительно довольны. Но однажды мой наставник, взглянув на мою реализацию поиска по огромному. . .
Тестирование энергоэффективности и скорости вычислений видеокарт в BOINC проектах
Programma_Boinc 08.07.2025
Тестирование энергоэффективности и скорости вычислений видеокарт в BOINC проектах Опубликовано: 07. 07. 2025 Рубрика: Uncategorized Автор: AlexA Статья размещается на сайте с разрешения. . .
Раскрываем внутренние механики Android с помощью контекста и манифеста
mobDevWorks 07.07.2025
Каждый Android-разработчик сталкивается с Context и манифестом буквально в первый день работы. Но много ли мы задумываемся о том, что скрывается за этими обыденными элементами? Я, честно говоря,. . .
API на базе FastAPI с Python за пару минут
AI_Generated 07.07.2025
FastAPI - это относительно молодой фреймворк для создания веб-API, который за короткое время заработал бешеную популярность в Python-сообществе. И не зря. Я помню, как впервые запустил приложение на. . .
Основы WebGL. Раскрашивание вершин с помощью VBO
8Observer8 05.07.2025
На русском https:/ / vkvideo. ru/ video-231374465_456239020 На английском https:/ / www. youtube. com/ watch?v=oskqtCrWns0 Исходники примера:
Мониторинг микросервисов с OpenTelemetry в Kubernetes
Mr. Docker 04.07.2025
Проблема наблюдаемости (observability) в Kubernetes - это не просто вопрос сбора логов или метрик. Это целый комплекс вызовов, которые возникают из-за самой природы контейнеризации и оркестрации. К. . .
Проблемы с Kotlin и Wasm при создании игры
GameUnited 03.07.2025
В современном мире разработки игр выбор технологии - это зачастую балансирование между удобством разработки, переносимостью и производительностью. Когда я решил создать свою первую веб-игру, мой. . .
Создаем микросервисы с Go и Kubernetes
golander 02.07.2025
Когда я только начинал с микросервисами, все спорили о том, какой язык юзать. Сейчас Go (или Golang) фактически захватил эту нишу. И вот почему этот язык настолько заходит для этих задач: . . .
C++23, квантовые вычисления и взаимодействие с Q#
bytestream 02.07.2025
Я всегда с некоторым скептицизмом относился к громким заявлениям о революциях в IT, но квантовые вычисления - это тот случай, когда революция действительно происходит прямо у нас на глазах. Последние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru