сделать запрос urllib в Python со стороны клиента - PullRequest
1 голос
/ 04 мая 2010

Я написал приложение на Python, которое отправляет веб-запросы с использованием библиотеки urllib2, после чего обрабатывает данные. Я мог бы развернуть это как веб-приложение, что означает, что все запросы urllib2 проходят через мой веб-сервер. Это приводит к опасности запрета IP-адреса сервера из-за большого количества веб-запросов для многих пользователей. Другой вариант - создать настольное приложение, которое я не хочу делать. Есть ли способ развернуть мое приложение, чтобы я мог получать свои веб-запросы через клиентскую часть. Одним из способов было использование Jython для создания апплета, но я читал, что апплеты Java могут отправлять веб-запросы только на тот сервер, на котором он развернут, и единственный способ обойти это - создать прокси на стороне сервера, который возвращает нас назад. на проблему запрета ip сервера.

Это может звучать как нереальная ситуация, и я, вероятно, в конечном итоге создаю настольное приложение, но я подумал, что спросить, знает ли кто-нибудь альтернативное решение.

Спасибо.

Ответы [ 3 ]

1 голос
/ 04 мая 2010

Вы можете использовать подписанный Java-апплет, они могут использовать механизм безопасности Java, чтобы разрешить доступ к любому сайту. Этот учебник объясняет, что именно вам нужно сделать: http://www -personal.umich.edu / ~ lsiden / tutorials / signature-applet / подписанный-applet.html

То же самое может быть возможно из апплета Flash. Javascript также ограничен опубликованным сайтом и не допускает подписи или исключений безопасности, таких как AFAIK.

1 голос
/ 04 мая 2010

Вы, вероятно, можете использовать AJAX-запросы, сделанные из JavaScript, который является частью клиентской части.

  • Используйте сервер → связь с клиентом, чтобы давать команды и необходимые данные, чтобы сделать запрос
  • … И затем используйте связь AJAX от клиента к стороннему серверу.
0 голосов
/ 04 мая 2010

Это зависит от формы «соскабливания», которую вы намереваетесь сделать:

  • Вы можете столкнуться с проблемами при запуске AJAX-вызова на сторонний сайт. Пожалуйста, смотрите Соскоб экрана через AJAX и JavaScript .
  • В качестве альтернативы можно сделать это на стороне сервера, но для кэширования результатов, чтобы избежать ненужного подключения стороннего сервера.

Проверьте diggstripper на код Google.

...