как использовать java.net.URLConnection для получения изображения с картинки в веб-форме php - PullRequest
0 голосов
/ 22 августа 2011

Я пытаюсь автоматизировать отправку одинаковых / похожих данных в веб-формы.Как часть этого процесса, я хочу отправить данные в веб-форму PHP, которая имеет капчу ... Капча определена как Img src = "http://domain.com/captcha.php".... она связана с текстовым полем на странице с именем" CAPTCHA "

Страница, на которую я хочу отправить данные, находится по адресу http://domain.com/submit.php.. Я пытаюсь использовать java.net.URLConnection, чтобы открыть соединение с этой страницей.

Что я хочу сделатьзнаю, как я могу получить значение этого изображения с картинки на экране? Я хочу, чтобы конечный пользователь заполнил эту капчу, а затем я отправлю форму для ее действия вместе с капчей (у меня уже есть значения для всех остальныхполя).

В документации Sun по Java.net.urlconnection я обнаружил следующий соответствующий раздел:

«Следующие методы используются для доступа к полям заголовка и содержимому после подключениясделано для удаленного объекта:

  • getContent
  • getHeaderField
  • getInputStream
  • getOutputStream "

Я не могу найтихороший пример для«getContent», который, по моему мнению, должен быть функцией для извлечения данных с веб-страницы.Я планирую использовать URLConnection в Google App Engine для Java.

Буду признателен за любую помощь.

Ответы [ 2 ]

1 голос
/ 22 августа 2011

Вам нужно будет проанализировать HTML-страницу, которую вернул сервер, затем вам нужно будет найти URL-адрес изображения на этой странице, загрузить изображение (уделяя особое внимание правильной обработке файлов cookie), а затем показать его пользователю..

0 голосов
/ 23 августа 2011

Если URL-адрес соответствует описанному вами, сервер, по-видимому, использует файлы cookie или другие идентификаторы сеанса для определения того, какая капча была предоставлена ​​пользователю, поэтому выборка этого кода сама по себе приведет к другой капче, чем та, которую пользователь должен ввести.

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

...