تمت الإجابة مشكلة فى جلب كامل الصفحة

تم تحميل الصفحة في 0,2601448 ثانية
مشكلة فى جلب كامل الصفحة

ابو روضة

.:: إداري النقطة العامة ::.
rankrankrankrankrankrank
إنضم
28 أكتوبر 2012
المشاركات
3,273
الإعجابات
3,463
النقاط
163
الإقامة
القاهرة
السلام عليكم إخوتى
بحاول جلب كامل هذه الصفحة بهذا الكود لكنه يجلبهم متكررين يعنى يجلب اول عشر مواضيع ويكررهم مرة اخرى
على حسب العدد اللى انا محدده واظن العيب فى هذه الكلمة page ...
موضوع مشابه

تمت الإجابة - جلب كامل الصفحة


C#:
 dataGridView1.Rows.Clear()
        For i As Integer = 1 To NumericUpDown1.Value
            Dim url As String = ("https://www.amrkhaled.net/Category/26/استشارات?page=" & i)
            Dim wc As New WebClient
            wc.Encoding = Encoding.UTF8
            Dim html As String = wc.DownloadString(url)
            Dim doc As New HtmlAgilityPack.HtmlDocument
            doc.LoadHtml(html)
            For Each n As HtmlAgilityPack.HtmlNode In doc.DocumentNode.SelectNodes("//*[@id='section-grid-container']/div[1]/div/div[2]/h3/a")
                dataGridView1.Rows.Add("https://www.amrkhaled.net" & n.Attributes("href").Value.ToString(), n.InnerText.Trim)
            Next
        Next

انا عملتها بالويب براوزر وتمام لكنه عقيم جدا كما تعرفون
 

IRizerX

.:: مُشرف أقسام البرمجة ::.
rankrank
إنضم
25 مايو 2017
المشاركات
327
الإعجابات
466
النقاط
63
وعليكم السلام ورحمة الله وبركاته

قمت بمراقبة الاتصالات واتضح ان الموقع هذا لايستخدم طريقة الpage

يأخذ الid حق اخر منشور او موضوع ويضعه في هذا الرابط

https://www.amrkhaled.net/Section/GetStoriesSection?sectionId=1042&maximum=10&lastId=[id]

وهكذا في كل مره تجلب فيها المواضيع تقوم بسحب الايدي الخاص بأخر موضوع



هذا الid الذي يجب جلبه

يكون الخاص بأخر موضوع في كل مرة

اذا مافهمت علي وحاب اعمله لك خبرني وماراح اقصر معك

بالتوفيق حبيبي
 

ابو روضة

.:: إداري النقطة العامة ::.
rankrankrankrankrankrank
إنضم
28 أكتوبر 2012
المشاركات
3,273
الإعجابات
3,463
النقاط
163
الإقامة
القاهرة
وعليكم السلام ورحمة الله وبركاته

قمت بمراقبة الاتصالات واتضح ان الموقع هذا لايستخدم طريقة الpage

يأخذ الid حق اخر منشور او موضوع ويضعه في هذا الرابط

https://www.amrkhaled.net/Section/GetStoriesSection?sectionId=1042&maximum=10&lastId=[id]

وهكذا في كل مره تجلب فيها المواضيع تقوم بسحب الايدي الخاص بأخر موضوع



هذا الid الذي يجب جلبه

يكون الخاص بأخر موضوع في كل مرة

اذا مافهمت علي وحاب اعمله لك خبرني وماراح اقصر معك

بالتوفيق حبيبي
الله يكرم أصلك أخى العزيز الغالى...
بصراحة انا نفسى أفهم هذه النقطة تحديداً لآنها ستفيدنى كثيراً جداً الله يكرمك
وانت أصلا لم تقصر مع اى شخص ربنا يبارك بوقتك
 

IRizerX

.:: مُشرف أقسام البرمجة ::.
rankrank
إنضم
25 مايو 2017
المشاركات
327
الإعجابات
466
النقاط
63
اسف على التأخير ولكن انشغلت بتطوير مكتبتي

عموما

هذا شرح يوضح الطريقة



عند الضغط على المزيد ظهر لي الرابط مع الlastid

وبعدها تدخل على الرابط وتروح الى اخر موضوع وتسحب الايدي الخاص فيه وتستبدله بالأيدي الموجود في الرابط وهكذا

ولكن أولا لكي تجلب الرابط بدون الضغط على المزيد

يجب عليك جلب سورس الصفحة الأساسي مثلا

استشارات - الموقع الرسمي للدكتور عمرو خالد

وبعدها تذهب الى اخر موضوع وتستخرج الايدي حقه

وتقوم بأستبداله بالأيدي الموجود بالرابط

 

ابو روضة

.:: إداري النقطة العامة ::.
rankrankrankrankrankrank
إنضم
28 أكتوبر 2012
المشاركات
3,273
الإعجابات
3,463
النقاط
163
الإقامة
القاهرة
اسف على التأخير ولكن انشغلت بتطوير مكتبتي

عموما

هذا شرح يوضح الطريقة



عند الضغط على المزيد ظهر لي الرابط مع الlastid

وبعدها تدخل على الرابط وتروح الى اخر موضوع وتسحب الايدي الخاص فيه وتستبدله بالأيدي الموجود في الرابط وهكذا

ولكن أولا لكي تجلب الرابط بدون الضغط على المزيد

يجب عليك جلب سورس الصفحة الأساسي مثلا

استشارات - الموقع الرسمي للدكتور عمرو خالد

وبعدها تذهب الى اخر موضوع وتستخرج الايدي حقه

وتقوم بأستبداله بالأيدي الموجود بالرابط

بصراحة مش فاهم اى كلمة من كلامك هذا لو انت فاهم رجاء فهمنى برمجياً :303:


محاولة فاشلة منى

C#:
  dataGridView1.Rows.Clear()
        For i As Integer = 1 To NumericUpDown1.Value
            Dim url As String = "https://www.amrkhaled.net/Section/GetStoriesSection?sectionId=1041&maximum=10&lastId=?" & i
            Dim wc As New WebClient
            wc.Encoding = Encoding.UTF8
            Dim html As String = wc.DownloadString(url)
            Dim doc As New HtmlAgilityPack.HtmlDocument
            doc.LoadHtml(html)
            For Each n As HtmlAgilityPack.HtmlNode In doc.DocumentNode.SelectNodes("//a[@class='headline d-block w-100']")
                dataGridView1.Rows.Add("https://www.amrkhaled.net" & n.Attributes("href").Value.ToString(), n.InnerText.Trim)

                Me.Text = dataGridView1.RowCount
            Next

        Next
 

ابو روضة

.:: إداري النقطة العامة ::.
rankrankrankrankrankrank
إنضم
28 أكتوبر 2012
المشاركات
3,273
الإعجابات
3,463
النقاط
163
الإقامة
القاهرة
عموما لا تتعب نفسك أخى عملتها بالويب براوزر..
جزاك الله خيراً تم اختيارك افضل اجابة
 

ابو روضة

.:: إداري النقطة العامة ::.
rankrankrankrankrankrank
إنضم
28 أكتوبر 2012
المشاركات
3,273
الإعجابات
3,463
النقاط
163
الإقامة
القاهرة
سؤال لو تكرمت
كيف أقرأ هذه الصفحات التى جلبتها فى الليست بوكس فى أداة RichTextBox بدلا من قرائتها على
اداة الويب براوزر
 

الأعضاء النشطين حاليآ الذين يشاهدون هذا الموضوع (1 عضو و 0 ضيف)

خيارات الاستايل

نوع الخط
مودك
اخفاء السايدر بار OFF
توسيط المنتدى OFF
فصل الأقسام OFF
الأقسام الفرعية OFF
عرض المشاركات
حجم الخط
معلومات العضو OFF
إخفاء التوقيع OFF

إرجاع خيارات الإستايل