تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] استفسار :- html table to datagridview
#1
السلام عليكم ورحمة الله

عندي كود يسحب داتا معلومات من موقع معين

الان ينزل المعلومات في 
TextBox1

اريد انزل هذه المعلومات في 
datagridview

حاولت وما ضبط معاي


هذا الكود والموقع

كود :
   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       WebBrowser1.Navigate("http://k7ar.net/ft8web/Default.aspx?FilterMode=ALL")
   End Sub

   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       TextBox1.Clear()
       For Each ele As HtmlElement In WebBrowser1.Document.GetElementsByTagName("td")
           TextBox1.Text += vbNewLine + ele.InnerText

       Next

   End Sub


خذا الهدر في الموقع

كود :
    <th scope="col">DX Call</th><th scope="col">Time</th><th scope="col">Freq</th><th scope="col">Spotter</th><th class="hidden-xs" scope="col">Prefix</th><th class="hidden-xs" scope="col">Comment</th><th class="hidden-xs" scope="col">State</th>
        </tr><tr style="color:Black;background-color:GhostWhite;height:8px;white-space:nowrap;">


وهذه المعلومات

كود :
<td style="width:100px;">R6LZ</td>
<td align="center" style="width:100px;"> <span>26-Mar 1001Z</span></td>
<td align="right" style="width:75px;">14074.0</td>
<td align="center" style="width:100px;">PD5MVH</td>
<td class="hidden-xs" style="width:50px;">UA</td>
<td class="hidden-xs" style="width:300px;">FT8 Ameland Isl qrp/p qrz 600h</td>
<td class="hidden-xs" align="center" style="width:40px;">&nbsp;</td>



الان ينزل في ال TextBox1  بهذا الشكل

HL1AHS 
26-Mar 1150Z 
14076.0
EA7FDR
HL
FT8 REP. DE KOREA

اريد اقصمهم في datagridview

HL1AHS  -- 26-Mar 1150Z  -- 14076.0 -- EA7FDR --  HL  --  FT8 REP. DE KOREA


حصلت كود في احد المواقع  وحاولت في بس ما ضبط

كود :
Public Function Demo1() As DataTable
       Dim Document As New HtmlAgilityPack.HtmlDocument()

       Document.LoadHtml(My.Resources.MyHtml)
       Dim table As HtmlAgilityPack.HtmlNode =
           Document.DocumentNode.SelectSingleNode("//table[@cellspacing='2']")

       Dim dt As New DataTable()

       Dim rows = table.SelectNodes("tr")

       For row As Integer = 0 To rows.Count - 1
           'if row = then these are headers
           If row = 0 Then

               Dim cols = rows(row).SelectNodes("th")

               dt.Columns.Add(New DataColumn(cols(0).InnerText.ToString()))
               dt.Columns.Add(New DataColumn(cols(1).InnerText.ToString()))
               dt.Columns.Add(New DataColumn(cols(2).InnerText.ToString()))
               dt.Columns.Add(New DataColumn(cols(3).InnerText.ToString()))
               dt.Columns.Add(New DataColumn(cols(4).InnerText.ToString()))
               dt.Columns.Add(New DataColumn(cols(5).InnerText.ToString()))
               dt.Columns.Add(New DataColumn(cols(6).InnerText.ToString()))
           Else
               Dim cols = rows(row).SelectNodes("td")

               Dim dr As DataRow = dt.NewRow()

               dr(0) = cols(0).InnerText.ToString()
               dr(1) = cols(1).InnerText.ToString()
               dr(2) = cols(2).InnerText.ToString()
               dr(1) = cols(3).InnerText.ToString()
               dr(2) = cols(4).InnerText.ToString()
               dr(1) = cols(5).InnerText.ToString()
               dr(2) = cols(6).InnerText.ToString()
               dt.Rows.Add(dr)

           End If
       Next

       Return dt

   End Function


كود :
       Dim c1 As New Class1
       DataGridView1.DataSource = c1.Demo1



محتاج مساعدتكم وشكرا
الرد
تم الشكر بواسطة:
#2
هل من رد بارك الله فيكم

وشكرا
الرد
تم الشكر بواسطة:
#3
السلام عليكم اخي الكريم Dubai
بصراحة لم افهم تماما ماتريد لكن حسب مافهمت منك قمت بعمل مثال يضع النص المتعدد الاسطر في الداتا غرايد
انظر الى المثال قد يكون طلبك دمت بخير


الملفات المرفقة
.rar   Add Text multiline in Dgv.rar (الحجم : 105.27 ك ب / التحميلات : 7)
الرد
تم الشكر بواسطة: ابو روضة , dubai.eig
#4
(29-03-19, 12:11 AM)ابراهيم ايبو كتب :
السلام عليكم اخي الكريم Dubai
بصراحة لم افهم تماما ماتريد لكن حسب مافهمت منك قمت بعمل مثال يضع النص المتعدد الاسطر في الداتا غرايد
انظر الى المثال قد يكون طلبك دمت بخير


شكرا لك استاذ ابراهيم


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

http://k7ar.net/ft8web/Default.aspx?FilterMode=ALL

   

وانزلها في ال datagridview

واعتذر اذا كان موضوعي غير واضح
الرد
تم الشكر بواسطة: ابراهيم ايبو
#5
راجع الرابط التالى
فهو للاخ الفاضل سعود

فهو مشابه كلياً لما تريد فعله 

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد
تم الشكر بواسطة: dubai.eig
#6
أو راجع هذا الرابط هو أيضا مشابه لما تريد :

VB.NET SCRAPE HTML TABLE
الرد
تم الشكر بواسطة: elgokr , dubai.eig



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم