منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : سؤال حول الحصول على نص من صحفة ويب داخل Class
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم حياكم الله
اريد المساعده في الحصول علي الكلام الموجود داخل الكلاس ساقوم باستخدام WEBbrowser
استخدم vb.net
ها هو المثال الذي ارايد الحصول علي الكلام منه
كود :
<span class="res-details-label bui_font_caption">Check time:</span>
<div class="bui_font_display_one">
                           Thu 8 Aug 2019
                       </div>

اريد الحصول علي كلمة  Thu 8 Aug 2019
استخدمت هذا الكود لكن لا يعمل يظهر كلا اخر موجود في نفس الصفحة
PHP كود :
For Each telement As HtmlElement In WebBrowser1.Document.GetElementsByTagName("div")
 
           Dim tElementClass As String "bui_font_display_one"
 
           Dim selementclass As String "bui_font_display_one"
 
           If telement.OuterHtml.Contains(tElementClassAndAlso telement.OuterHtml.Contains(selementclassThen
            Dim conStr 
As String telement.GetAttribute("innertext")
 
           Txtget.TextconStr 

            End 
If
 
              Next 

         
وعليكم السلام اخي الكريم
ان الكود بالفعل يعمل ولا يوجد به مشكلة لقد قمت بتجربته وهو يعمل
وهذا هو المشروع
https://up.top4top.net/downloadf-13158twxm1-rar.html
أو ضع هذا مع ان كودك يعمل جيدا

كود :
 Dim gg As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("div")
       For Each item As HtmlElement In gg
           If item.GetAttribute("className") = ("bui_font_display_one") Then
               Txtget.Text = item.InnerText
           End If
       Next item
متشكر جدا ليكم

ولكني عندي سؤال اخر ماذا لو كان لدي اكثر من كلاس بنفس الاسم وكل واحد قيمه مختلفه
(08-08-19, 08:56 PM)dametucorazon كتب : [ -> ]متشكر جدا ليكم

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

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

PHP كود :
<div class="res-detail-card">
 
       <div class="col-sm-4 res-detail col-3__print">
 
           <div class="row">
 
               <div class="col-xs-7 col-sm-12 col-12__print">
 
                   <div class="bks-item">
 
                       <span class="res-details-label bui_font_caption">Check-in:</span>
 
                       <div class="bui_font_display_one">
 
                           Tue 7 Apr 2020
                        
</div>
 
                   </div>

 
                   <div class="bks-item">
 
                       <span class="res-details-label bui_font_caption">Check-out:</span>
 
                       <div class="bui_font_display_one">
 
                           Wed 8 Apr 2020
                        
</div>
 
                   </div>

 
                   <div class="bks-item">
 
                       <span class="res-details-label bui_font_caption">Length of stay:</span>
 
                       <div class="bui_font_body">1 night</div>
 
                   </div>
 
               </div>

 
               <div class="col-xs-5 col-sm-12 col-12__print">
 
                   <div class="bks-item">
 
                       <span class="res-details-label bui_font_caption">Total guests:</span>
 
                       <span class="bui_font_body">
 
                               2
                        
</span>
 
                   </div>

 
                   <div class="bks-item">
 
                           <span class="res-details-label bui_font_caption">Total rooms:</span>
 
                       <div class="bui_font_body">1</div>
 
                   </div>
 
               </div>
 
           </div> <!-- .row --> 
استخدم RegEx لقراءة البيانات هكذا
PHP كود :
Dim html WebBrowser1.DocumentText
Dim coll 
As MatchCollection Regex.Matches(html"<div class=""bks-item"">.+?</div>"RegexOptions.Singleline)
Dim CheckInCheckOutLengthOfStayTotalGuestsTotalRooms As String
For Each mt As Match In coll
    
If mt.Value.Contains("Check-in:"Then
        CheckIn 
Regex.Match(mt.Value"<div class=""bui_font_display_one"">(.+?)</div>"RegexOptions.Singleline).Groups(1).Value.Trim
    End 
If
    If 
mt.Value.Contains("Check-out:"Then
        CheckOut 
Regex.Match(mt.Value"<div class=""bui_font_display_one"">(.+?)</div>"RegexOptions.Singleline).Groups(1).Value.Trim
    End 
If
    If 
mt.Value.Contains("Length of stay:"Then
        LengthOfStay 
Regex.Match(mt.Value"<div class=""bui_font_body"">(.+?)</div>"RegexOptions.Singleline).Groups(1).Value.Trim
    End 
If
    If 
mt.Value.Contains("Total guests:"Then
        TotalGuests 
Regex.Match(mt.Value"<span class=""bui_font_body"">(.+?)</span>"RegexOptions.Singleline).Groups(1).Value.Trim
    End 
If
    If 
mt.Value.Contains("Total rooms:"Then
        TotalRooms 
Regex.Match(mt.Value"<div class=""bui_font_body"">(.+?)</div>"RegexOptions.Singleline).Groups(1).Value.Trim
    End 
If
Next

MsgBox
("Check-in:       " vbTab CheckIn vbNewLine _
        
"Check-out:      " vbTab CheckOut vbNewLine _
        
"Length of stay: " vbTab LengthOfStay vbNewLine _
        
"Total guests:   " vbTab TotalGuests vbNewLine _
        
"Total rooms:    " vbTab TotalRooms _
        


إذا لم تستفيد من هذه الطريقة، ضع رابط الموقع لفحصه وإيجاد حل مناسب معه
شكرا يااخي ربنا يباركلك ولكن لدي جزء اخر لا استطيع جلب البيانت الخاص به حاولت ولم انجح ممكن مساعده
احتاج Guest name Catherine Zinampan

Booking number: 2887539976
البلد ايضا

كود السورس علما بانها صفحة داخل العمل علي شبكة داخليه ليست اون لاين

PHP كود :
<div class="room-info-row js-room-details hidden  visible-always-print" data-room-reservation-id="2541644755">
 
       <div class="row">
 
           <div class="col-md-4 col-2__print">

 
                   <div class="room-details-info-block">
 
                       <span class="res-details-label bui_font_caption">
 
                           Guest name
                        
</span>
 
                       <span class="bui_font_body">
 
                               Catherine Zinampan
                        
</span>
 
             
     
</div>
<
span class="flag_icon flag_r"></span>
<
span class="bui_font_caption">egypt</span>

 <
div class="row">
 
                   <div class="col-sm-12">
 
                       <div class="bks-item bks-accordion-row bks-reference hidden-print" data-id="res_info">
 
                           <span class="res-details-label bui_font_caption">Booking number:</span>
 
                           <span class="bui_font_body">2887539976</span
انتظر مساعده من حضرتك