Лучший способ, с которым я столкнулся, это:
HTML5:
<p>Initial Colors <a id="new-color">Different Colors</a></p>
CSS3:
p {
color: #000000;
text-decoration-line: underline;
text-decoration-color: #a11015;
}
p #new-color{
color: #a11015;
text-decoration-line: underline;
text-decoration-color: #000000;
}
Это довольно просто. Вам нужен собственный метод входа (HttpPost).
Вы можете придумать что-то вроде этого (таким образом вы получите все необходимые файлы cookie после входа в систему, и вам нужно просто передать их следующему HttpWebRequest):
public static HttpWebResponse HttpPost(String url, String referer, String userAgent, ref CookieCollection cookies, String postData, out WebHeaderCollection headers, WebProxy proxy)
{
try
{
HttpWebRequest http = WebRequest.Create(url) as HttpWebRequest;
http.Proxy = proxy;
http.AllowAutoRedirect = true;
http.Method = "POST";
http.ContentType = "application/x-www-form-urlencoded";
http.UserAgent = userAgent;
http.CookieContainer = new CookieContainer();
http.CookieContainer.Add(cookies);
http.Referer = referer;
byte[] dataBytes = UTF8Encoding.UTF8.GetBytes(postData);
http.ContentLength = dataBytes.Length;
using (Stream postStream = http.GetRequestStream())
{
postStream.Write(dataBytes, 0, dataBytes.Length);
}
HttpWebResponse httpResponse = http.GetResponse() as HttpWebResponse;
headers = http.Headers;
cookies.Add(httpResponse.Cookies);
return httpResponse;
}
catch { }
headers = null;
return null;
}
Конечно, это было сделано. Я делал это пару раз. Это (в общем) называется очистка экрана или веб-скрапинг.
Вам следует взглянуть на этот вопрос (а также просмотреть вопросы под тегом « screen -scraping ". Обратите внимание, что парсинг относится не только к извлечению данных из веб-ресурса. Он также включает отправку данных в онлайн-формы, чтобы имитировать действия пользователя при отправке ввода, такого как форма входа в систему.