rendered paste body private void getHeader()
{
string url;
url = getUrlFromMsg();
try
{
WebClient web = new WebClient();
TcpClient webTC = new TcpClient();
webTC.Connect(url.Split('/')[2], 80);
Console.WriteLine(url.Split('/')[2]);
NetworkStream WebStream = webTC.GetStream();
StreamReader WebRead = new StreamReader(WebStream);
StreamWriter WebWrite = new StreamWriter(WebStream);
Console.WriteLine("HEAD " + url.Substring(7 + url.Split('/')[2].Length) + " HTTP/1.0");
if (url.Split('/').Length >= 4)
WebWrite.WriteLine("HEAD " + url.Substring(7 + url.Split('/')[2].Length) + " HTTP/1.0");
else
WebWrite.WriteLine("HEAD / HTTP/1.0");
WebWrite.Flush();
WebWrite.WriteLine("");
WebWrite.Flush();
int acceptableLength = 0;
while (true)
{
while ((inputLine = WebRead.ReadLine()) != null)
{
Console.WriteLine(inputLine);
if (inputLine.Contains("Content-Length:"))
{
size = Int32.Parse((inputLine.Split(' ')[1]));
if (size <= 1073741824)
acceptableLength = 1;
else
acceptableLength = 2;
continue;
}
if (inputLine.Contains("Content-Type:") && inputLine.Contains("text/html") && (acceptableLength == 2 || acceptableLength == 0) )
{
Console.WriteLine(inputLine);
byte[] httpByteStream = web.DownloadData(url);
string httpString = Encoding.Default.GetString(httpByteStream);
string[] titleSplitArray = Regex.Split(httpString, "<title [^>]*>|<TITLE[^>]>|<title>|<TITLE>");
string[] titleContent = Regex.Split(titleSplitArray[1], "</title|</TITLE");
if (url.Length >= 70)
{
byte[] responseArray = web.DownloadData("http://tinyurl.com/api-create.php?url=" + url);
chanAct.say("[" + titleContent[0].Replace('\n', ' ') + "] " + Encoding.ASCII.GetString(responseArray));
chanAct.say("[" + titleContent[0].Replace('\n', ' ') + "] " + Encoding.ASCII.GetString(responseArray));
break;
}
else
{
chanAct.say("[" + titleContent[0].Replace('\n', ' ') + "]");
break;
}
}
else if (inputLine.Contains("Content-Type:") && !inputLine.Split(' ')[1].Contains("text/html"))
{
Console.WriteLine("[" + inputLine.Split(' ')[1] + ": " + size + "]");
chanAct.say("[" + inputLine.Split(' ')[1] + ": " + size + "]");
break;
}
}
break;
}
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
}