Как использовать webclient в безопасном сайте?

Если результаты вашего запроса верны, то все, что вам нужно, это group by для этого запроса:

select 
  t.PropNumber, t.propname, t.detail_group, 
  sum(t.UnitCount) UnitCount, sum(t.MoveIns) MoveIns
from (
  <your query>
) t
group by 
  t.PropNumber, t.propname, t.detail_group
7
задан Oded 7 September 2008 в 09:25
поделиться

4 ответа

Один путь был бы посредством автоматизации браузера - Вы упомянули WebClient, таким образом, я предполагаю, что Вы могли бы обращаться к WebClient в.NET.

Два основных момента:

  • нет ничего специального о https, связанном с WebClient - это просто работает
  • , Cookie обычно используются для переноса аутентификации - необходимо будет получить и воспроизвести их

, Вот шаги, которые я выполнил бы:

  1. ПОЛУЧАЮТ форму входа в систему, получают cookie в ответе.
  2. Используя Xpath и HtmlAgilityPack, найдите "вход type=hidden" имена полей и значения.
  3. POST для входа в систему действия формы с именем пользователя, паролем и скрытыми значениями полей в теле запроса. Включайте cookie в заголовки запроса. Снова, получите cookie в ответе.
  4. ПОЛУЧАЮТ страницы, которые Вы хотите, снова, с cookie в заголовках запроса.

На шаге 2, я упоминаю несколько сложный метод для автоматизации входа в систему. Обычно, можно отправить с именем пользователя и паролем непосредственно к известному действию формы входа в систему, не получая начальную форму или передав скрытые поля. Некоторые сайты имеют проверку формы (отличающийся от полевой проверки) на их формах, который заставляет этот метод не работать.

HtmlAgilityPack является библиотекой.NET, которая позволяет Вам превращать плохо сформированный HTML в XmlDocument, таким образом, Вы можете XPath по нему. Довольно полезный.

Наконец, можно столкнуться с ситуацией, где форма полагается на клиентский сценарий для изменения значений формы перед представлением. Вы, возможно, должны моделировать это поведение.

Используя инструмент для просмотра трафика HTTP для этого типа работы чрезвычайно полезно - я рекомендую ieHttpHeaders, Скрипач , или FireBug (сетевая вкладка).

9
ответ дан 7 December 2019 в 01:28
поделиться

Можно ли разъясниться? Класс WebClient, Вы говорите о том в HTTPUnit/Java?

Если так, Ваша сессия должна быть сохранена автоматически.

0
ответ дан 7 December 2019 в 01:28
поделиться

Это не ясно из Вашего вопроса, к какому классу WebClient (или язык) Вы обращаетесь.

, Если имеют Среду выполнения Java, можно использовать класс Apache HttpClient; вот пример, я записал использованию Groovy, который получает доступ к восхитительному API по SSL:

   def client = new HttpClient()

   def credentials = new UsernamePasswordCredentials( "username", "password" )
   def authScope = new AuthScope("api.del.icio.us", 443, AuthScope.ANY_REALM)
   client.getState().setCredentials( authScope, credentials )

   def url = "https://api.del.icio.us/v1/posts/get"

   def method = new PostMethod( url )
   method.addParameter( "tag", tag )
   client.executeMethod( method )
0
ответ дан 7 December 2019 в 01:28
поделиться

Можно легко моделировать ввод данных пользователем. Можно отправить форму на веб-странице от Вас, программа путем отправки post\get запрашивает к веб-сайту.
Типичная форма входа в систему похожа:

<form name="loginForm" method="post" Action="target_page.html">
   <input type="Text" name="Username">
   <input type="Password" name="Password">
</form>

можно отправить запрос сообщения к значениям обеспечения веб-сайта для Имени пользователя & поля Пароля. То, что происходит после того, как Вы отправляете свой запрос, в основном зависит от веб-сайта, обычно Вы будете перенаправлены к некоторой странице. Вы информация об авторизации будете сохранены в sessions\cookie. Таким образом, если Вы очищаете клиент, может поддержать сеть session\understands cookie, Вы будете в состоянии получить доступ к защищенным страницам.

не ясно из Вашего вопроса, какой language\framework Вы собираетесь использовать. Например, существует платформа для анализа экранных данных (включая функциональность входа в систему) записана в жемчуге - WWW:: Механизируйте

Примечание, что можно столкнуться с некоторыми проблемами, если сайт Вы пытаетесь войти в систему к сценариям Java использования или некоторой КАПЧЕ.

1
ответ дан 7 December 2019 в 01:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: