public TrackemonSession FindSessionId()
{
var trackemonSession = new TrackemonSession();
try
{
var cookieContainer = new CookieContainer();
const string homepageUrl = "https://www.trackemon.com";
var request = WebRequest.CreateHttp(homepageUrl);
request.Method = "GET";
request.Timeout = Timeout;
request.CookieContainer = cookieContainer;
using (var response = request.GetResponse())
{
var cookieHeader = cookieContainer.GetCookieHeader(new Uri("https://www.trackemon.com"));
trackemonSession.cookieHeader = cookieHeader;
using (var reader = new StreamReader(response.GetResponseStream()))
{
string line;
while ((line = reader.ReadLine()) != null)
{
var match = Regex.Match(line, @"var\s+sessionId\s*=\s*\'(1?.*)\'\s*;");
if (match.Success)
{
trackemonSession.sessionId = match.Groups[1].Value;
return trackemonSession;
}
}
}
}
}
catch (Exception e)
{
Log.Debug("Error trying to get a sessionId for Trackemon: {0}", e.Message);
}
return null;
}