Проверка ссылки на битость - C#

Узнай цену своей работы

Формулировка задачи:

Пытаюсь написать метод, который собирает все внутренний ссылки сайта в список. Помогите, пожалуйста, с реализацией

проверки найденных ссылок, которые могут не существовать

.
public List<string> build_tree(string adress) // поиск всех внутренних ссылок сайта
        {
            List<String> A=new List<String>(); //динамический список всех ссылок
            A.Add(adress);
            string code_h="";
            int i=0;
            bool fl=false; 
            string pattern="(?<=<a href=\")\\S+(?=\">)"; // регулярка для нахождения ссылок
            do
            {
                code_h = get_html(A[i]); // строка с html кодом текущей страницы 
                foreach (Match match in Regex.Matches(code_h, pattern)) 
                {
                    fl = false;
                    for (int p = 0; p < A.Count; p++) // цикл проверки уникальности ссылки
                    {
                        if (match.Groups[1].Value == A[p])
                        {
                            fl = true;
                            break;
                        }
                    }
                    if (fl == false)
                    {
                        A.Add(match.Value);
                    }
                }
                i++;
            }
            while (i != A.Count);
            return A;    
        }

Решение задачи: «Проверка ссылки на битость»

textual
Листинг программы
bool IsPageExists(string url)
{
    try
    {
        WebClient client = new WebClient();
        client.DownloadString(url);
    }
    catch (WebException ex)
    {
        HttpWebResponse response = ex.Response != null ? ex.Response as HttpWebResponse : null;
        if (response != null && response.StatusCode == HttpStatusCode.NotFound)
        {
            return false;
        }
    }
    
    return true;
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.143 из 5