مرجع تخصصی برنامه نویسان

بزرگترین انجمن برنامه نویسان فارسی زبان

معرفی منبع مناسب برای آموزش Html Agility Pack (HAP) در Asp.net Mvc 5

شنبه, 02 تیر 1397 15:27

معرفی منبع مناسب برای آموزش Html Agility Pack (HAP) در Asp.net Mvc 5

سلام ,

لطفا یک منبع(سایت) برای آموزش Html Agility Pack (HAP) معرفی کنید ؟

شنبه, 02 تیر 1397 17:35
شنبه, 02 تیر 1397 19:14

ممنون خیلی خوبه ,

استاد لطفا این صفحه رو ببینید(قند شکن لازمه) :

https://www.trendyol.com/soho/turuncu-mavi-pudra-sari-kadin-sandalet-p-2807990?boutiqueId=188033

میخوام لیست سایز های موجود در لیست کشویی و قیمت و درصد تخفیف و تصاویر رو انتخاب کنم .

برای مثال برای انتخاب لیست سایز ها من در کنترولر کد زیر رو نشوتم :

                List<string> Lists = new List<string>();

                var url = "https://www.trendyol.com/soho/sari-mavi-ten-taba-kadin-sandalet-p-2852192";
                var web = new HtmlWeb();
                var doc = web.Load(url);

              //  var nodes = doc.DocumentNode.Descendants("span").Select(y => y.Descendants().Where(x => x.Attributes["class"].Value == "filter-option pull-left")).ToList();
                var value = doc.DocumentNode.SelectNodes("span[@class='filter-option pull-left']").ToList();


                foreach (var item in value)
                {
                    Lists.Add(item.InnerText);
                }

                ViewBag.content = Lists;

و میخوام بصورت یک لیست به سمت View بفرتم.

ولی بخطا میخوره و به catch میره .

میشه لطفا  یک مورد رو راهنمایی کنید که کد درست انتخاب لیست سایز رو چطور بنویسم ؟

یکشنبه, 03 تیر 1397 15:43

دلیل خطای زیر چیه ؟


 
    List<string> Lists = new List<string>();
    HtmlDocument html = new HtmlDocument();
    html.Load("text.html"); // or html.LoadHtml(html_string)  

    HtmlWeb web = new HtmlWeb();  
    HtmlDocument document = web.Load("https://www.trendyol.com/soho/mavi-kadin-sandalet-p-2870277?boutiqueId=188033");

             
    var links = document.DocumentNode.SelectNodes("//div/div/li/a/span[@class='text']").ToList();

    foreach (var item in links)
    {
        Lists.Add(item.InnerText);
    }

صفحه موردنظر رو دانلود کردم و روی هارد ذخیره کردم و دستور رو روش اجرا میکنم بخوبی کار میکنه ولی وقتی روی ادرس سایت اجرا میکنم اخطار بالا رو میده .

یکشنبه, 03 تیر 1397 19:49

متن خطا میگه یکی از value ها null هست که نباید باشه

Trace کنید ببینید کدام خالی است و با شرط کنترل کنید

دوشنبه, 04 تیر 1397 02:45

سلام ,ممنون مشکل حل شد.

استاد این سایتی که من الان باهاش کار میکنم ف.ی.ل.ت.ر شده و فقط وقتی ف.ی.ل.ت.ر شکن روشن باشه خوندن اطلاعات از سایت انجام میشه ,

آیا راهی برای رفع این مشکل وجود داره ؟

دوشنبه, 04 تیر 1397 07:44

سرور را خارج از کشور انتخاب کنید و دیگه این مشکل رو نخواهید داشت

در حال کد نویسی اینگونه است

دوشنبه, 04 تیر 1397 14:30
منظورتون سرور هاستِ ، درسته ؟
دوشنبه, 04 تیر 1397 16:46

ارسال پاسخ برای این تاپیک

ارسال پاسخ مخصوص اعضا سایت می باشد ! میتوانید با حساب کاربری خود وارد سایت شده یا ثبت نام کنید