using System.Collections.Generic;
using System.Text.RegularExpressions;
private static string GetHTML(string site)
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(site);
Stream stream = request.GetResponse().GetResponseStream();
using (StreamReader reader = new StreamReader(stream, Encoding.GetEncoding(1251)))
html = reader.ReadToEnd();
private static List<string> GetUrls (string html, string site)
for (int i = 0; i < site.Length; i++)
if (site[i] == '/'){count += 1;}
subsite = site.Substring(0, i);
Console.WriteLine(subsite);
string pattern = string.Format(@"\<{0}.*?\>(?<tegData>.+?)\<\/{0}\>", tag.Trim());
Regex regex = new Regex(pattern, RegexOptions.ExplicitCapture);
MatchCollection adress = regex.Matches(html);
List<string> urls = new List<string>();
foreach (Match url in adress)
string onout = url.Value;
int first = onout.IndexOf('/');
onout = onout.Substring(first);
int second = onout.IndexOf('>');
onout = onout.Substring(0, second);
if (onout.IndexOf("//") == 0){onout = site.Substring(0, site.IndexOf(':') + 1) + onout;}
else if (subsite != "none"){onout = subsite + onout;}
else if (site[site.Length - 1] == '/'){onout = site.Substring(0, site.Length - 1) + onout;}
else{onout = site.Substring(0, site.Length) + onout;}
if (onout.IndexOf('"') != -1){onout = onout.Substring(0, onout.IndexOf('"'));}
foreach (string url in urls)
public static void Main(string[] args)
site = Convert.ToString(Console.ReadLine());
string html = GetHTML(site);
List<string> urls = GetUrls(html, site);