.NET 4.x Парсинг HTML - C# (190730)

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

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

Здравствуйте, решил потренироваться в написании парсера Html страниц, но уперся в проблему и покуда не могу её решить. Для парсинга использую HtmlAgilityPack. Парсю сайт http://playhots.net/ При наведении на иконку героя появляется всплывающая подсказка(как это выглядит в моём браузере смотрите на картинке) с данными которые я хочу получить. Проблема в том, что при сохранении страницы или при просмотре кода страницы я не могу получить html код данного tooltip. На картинке он обведен красным. Я думаю, что данный код создаётся динамически с использованием JS. Как мне программно(с помощью стандартных средств или HtmlAgilityPack) выполнить данный скрипт, чтобы получить html разметку tooltip-а? Скорее всего, скрипт отвечающий за подсказки вот этот:
<script>      
    $(document).ready(function(){
        //tooltips
        $("[data-tooltip]").each(function(indx, element) {
        var $tool = $(element).data('tooltip');
        $(element).opentip("", {ajax: "http://playhots.net/"+$tool+"", ajaxMethod: "POST", delay: 0.1, background: [ [ 0, "rgba(86, 179, 241, 0)" ], [ 1, "rgba(86, 179, 241, 0)" ] ], borderWidth: 0 });
        });
        
        //spoilers
        $('[data-tabgroup]').hide();
        $('[data-tabctrl]').each(function(){
            $(this).click(function(){
                if($(this).hasClass('tr_disabled')) return;
                var tabgroup = $(this).data('tabctrl');
                var tabid = $(this).data('ctabid');
                
                if($('[data-tabgroup="'+tabgroup+'"][data-tabid="'+tabid+'"]').is(":visible")) return;
                
                $('[data-tabgroup='+tabgroup+']').hide();  
                $('[data-tabgroup="'+tabgroup+'"][data-tabid="'+tabid+'"]').show();
                
                $('[data-tabctrl='+tabgroup+']').addClass('tr_inactive');
                $(this).removeClass('tr_inactive');
            }); 
            if($(this).data('ctabid') == "1"){
                $(this).click();
            } 
        });
    });
</script>

Решение задачи: «.NET 4.x Парсинг HTML»

textual
Листинг программы
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://playhots.net/stormling/wiki/tooltiphero/14");
request.Method = "POST";
Stream requestStream = request.GetRequestStream();
requestStream.Close();
HttpWebResponse myHttpWebResponse = (HttpWebResponse)request.GetResponse();
Stream responseStream = myHttpWebResponse.GetResponseStream();
StreamReader myStreamReader = new StreamReader(responseStream, Encoding.UTF8);
string pageContent = myStreamReader.ReadToEnd();
myStreamReader.Close();
responseStream.Close();
myHttpWebResponse.Close();
return pageContent;

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


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

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

8   голосов , оценка 3.875 из 5