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

نسخة كاملة : الضغط على زر مشاهدة المزيد
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم
اخوتى بقوم بجلب روابط  المواضيع من هذه الصفحة http://www.storiesrealistic.com/category...%A8%D8%B1/

لكن هناك روابط اسفل ولابد من الضغط على زر مشاهدة المزيد لتظهر لى
وانا جلبتهم بهذا الكود

PHP كود :
Dim input As HtmlElementCollection
        input 
WebBrowser1.Document.GetElementsByTagName("a")
 
       For Each item As HtmlElement In input
            If item
.InnerText = ("مشاهدة المزيد"Then
                item
.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
               item.InvokeMember("Click")
 
           End If

 
       Next item 

لكن طبعا هذا الكود  item.InvokeMember("Click")مكرر كثيرا ويوقف المشروع وايضا مش بيجلبهم كلهم
فهل هناك طريقة للضغط على هذا الزر ليجلب أخره بدل ما اقعد أزيد فى هذا الكود item.InvokeMember("Click")
فى البداية استخدم الكود بهذا الشكل
كود :
Dim input As HtmlElementCollection
       input = WebBrowser1.Document.GetElementsByTagName("a")
       Dim ii As Integer
       For Each item As HtmlElement In input
           If item.InnerText = ("مشاهدة المزيد") Then
               Do
                   item.InvokeMember("Click")
                   If item.InnerText = ("لا يوجد المزيد") Then
                       Exit Do
                   End If
                   Dim t As New Threading.Thread(AddressOf closeMsgbox)
                   t.Start(1) '1 = 1 second
                   ii += 1
                   MsgBox("الصفحة رقم " & ii)
               Loop
           End If
       Next item

وايضاً اضف هذا الكود اسفل Public Class Form1
كود :
   Private Declare Sub keybd_event Lib "user32" _
                     (ByVal bVk As Byte,
                      ByVal bScan As Byte,
                      ByVal dwFlags As Byte,
                      ByVal dwExtraInfo As Byte)
   Private Const VK_RETURN As Byte = &HD
   Private Const KEYEVENTF_KEYDOWN As Byte = &H0
   Private Const KEYEVENTF_KEYUP As Byte = &H2

   Private Sub closeMsgbox(ByVal delay As Object)
       Threading.Thread.Sleep(CInt(delay) * 1000)
       AppActivate(Me.Text)
       keybd_event(VK_RETURN, 0, KEYEVENTF_KEYDOWN, 0)
       keybd_event(VK_RETURN, 0, KEYEVENTF_KEYUP, 0)
   End Sub

تحياتى لك
وتمنياتى لك التوفيق
والله ما عارف ماذا اقول لك اخى الجوكر انت ماشاء الله عليك حليت
مشاكل لناس كثيرة جدا ..

فجزاك الله كل خير
الحمد لله على كل حال

تحياتى لك
وتمنياتى لك التوفيق
ما شاء الله ... دائما متالق اخي... جزاك الله الف خير و بركة