/// <summary> /// WebCall. /// </summary> /// <param name="url">URL.</param> /// <param name="cookies">Cookies.</param> /// <param name="host">Хост.</param> /// <param name="port">Порт.</param> /// <param name="proxyLogin">Логин прокси-сервера</param> /// <param name="proxyPassword">Пароль прокси-сервера</param> private WebCall(string url, Cookies cookies, string host = null, int? port = null, string proxyLogin = null, string proxyPassword =null) { Request = (HttpWebRequest)WebRequest.Create(url); Request.Accept = "text/html"; Request.UserAgent = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"; Request.CookieContainer = cookies.Container; if (host != null && port != null) Request.Proxy = new WebProxy(host, port.Value); if (Request.Proxy != null) { if (proxyLogin != null && proxyPassword != null) { Request.Proxy.Credentials = new NetworkCredential(proxyLogin, proxyPassword); } else { // Авторизация с реквизитами по умолчанию (для NTLM прокси) Request.Proxy.Credentials = CredentialCache.DefaultCredentials; } } Result = new WebCallResult(url, cookies); }
private WebCall(string url, Cookies cookies) { Request = (HttpWebRequest)WebRequest.Create(url); Request.Accept = "text/html"; Request.UserAgent = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"; Request.CookieContainer = cookies.Container; Result = new WebCallResult(url, cookies); }
private WebForm(WebCallResult result) { Cookies = result.Cookies; _originalUrl = result.RequestUrl.OriginalString; _html = new HtmlDocument(); result.LoadResultTo(_html); _inputs = ParseInputs(); }
private WebCall(string url, Cookies cookies, VkApi vk) { Request = (HttpWebRequest)WebRequest.Create(url); Request.Accept = "text/html"; Request.UserAgent = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"; Request.CookieContainer = cookies.Container; if (!vk.isDefaultVkApi) { createProxy(ProxyManager.getInstance().reserveOrGet(vk.email), Request); } Result = new WebCallResult(url, cookies); }
private WebCall(string url, Cookies cookies, string host = null, int? port = null) { Request = (HttpWebRequest)WebRequest.Create(url); Request.Accept = "text/html"; Request.UserAgent = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"; Request.CookieContainer = cookies.Container; if (host != null && port != null) Request.Proxy = new WebProxy(host, port.Value); Result = new WebCallResult(url, cookies); }
/// <summary> /// WEB форма. /// </summary> /// <param name="result">Результат.</param> private WebForm(WebCallResult result) { Cookies = result.Cookies; OriginalUrl = result.RequestUrl.OriginalString; var parser = new HtmlParser(); _html = parser.Parse(result.Response); var uri = result.ResponseUrl; _responseBaseUrl = uri.Scheme + "://" + uri.Host + ":" + uri.Port; _inputs = ParseInputs(); }
/// <summary> /// WebCall. /// </summary> /// <param name="url">URL.</param> /// <param name="cookies">Cookies.</param> /// <param name="webProxy">Хост.</param> /// <param name="allowAutoRedirect">Разрешить авто редиррект</param> private WebCall(string url, Cookies cookies, IWebProxy webProxy = null, bool allowAutoRedirect = true) { var baseAddress = new Uri(url); var handler = new HttpClientHandler { CookieContainer = cookies.Container, UseCookies = true, Proxy = webProxy, AllowAutoRedirect = allowAutoRedirect }; _request = new HttpClient(handler) { BaseAddress = baseAddress, DefaultRequestHeaders = { Accept = {MediaTypeWithQualityHeaderValue.Parse("text/html")} } }; _result = new WebCallResult(url, cookies); }
/// <summary> /// Сохранить куки. /// </summary> /// <param name="cookies">Куки.</param> public void SaveCookies(CookieCollection cookies) { Cookies.AddFrom(ResponseUrl, cookies); }
/// <summary> /// Инициализация класса WebCallResult /// </summary> /// <param name="url">URL.</param> /// <param name="cookies">Куки.</param> public WebCallResult(string url, Cookies cookies) { RequestUrl = new Uri(url); Cookies = cookies; Response = string.Empty; }
public WebCallResult(string url, Cookies cookies) { RequestUrl = new Uri(url); Cookies = cookies; Response = string.Empty; }