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

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




PHP كود :
Dim link As New WebClient
        link
.Encoding Encoding.UTF8
        Dim cr 
As String link.DownloadString(TextBox1.Text)
 
       Dim dc As New HtmlAgilityPack.HtmlDocument
        dc
.LoadHtml(cr)
 
       For Each nood As HtmlAgilityPack.HtmlNode In dc.DocumentNode.SelectNodes("//*[contains(@href,'googlevideo.com/videoplayback?')]")
 
           ListBox1.Items.Add(nood.Attributes("href").Value)
 
       Next 









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

PHP كود :
Dim links As New List(Of String)()
Dim htmlDoc As New HtmlAgilityPack.HtmlDocument()
htmlDoc.LoadHtml(WebSource)
For 
Each link As HtmlNode In htmlDoc.DocumentNode.SelectNodes("//a[@href]")
    Dim att As HtmlAttribute link.Attributes("href")
    If att.Value.Contains("'googlevideo.com/videoplayback?'"Then
        links
.Add(att.Value)
    End If
Next 
(14-03-21, 04:13 PM)معاند الحظ كتب : [ -> ]وعليك السلام ورحمة الله وبركاته
جرب هذا الكود

PHP كود :
Dim links As New List(Of String)()
Dim htmlDoc As New HtmlAgilityPack.HtmlDocument()
htmlDoc.LoadHtml(WebSource)
For 
Each link As HtmlNode In htmlDoc.DocumentNode.SelectNodes("//a[@href]")
    Dim att As HtmlAttribute link.Attributes("href")
    If att.Value.Contains("'googlevideo.com/videoplayback?'"Then
        links
.Add(att.Value)
    End If
Next 


أهلا بالأخ الغالى معاند الحظ...
للأسف جربته ولم ينفع.

احيرا وبعد حوسه طويلة احب اقولك اخوي أبو روضة ما عنك وعن استخدام WebBrowser
لان الصفحة تولد الروابط بعد تنفيذ امر او كود معين بها (بصراحة لا ادري ما هو)
لكن بعد البحث الطويل ما لقيت عير هذا الحل وان شاء الله ينفعك

فقط ضع زر و textbox لعنوان الصفحة واخر لـ حفظ الروابط

[attachment=26573]

كود :
Imports HtmlAgilityPack
Imports System.Text
Imports System.Net

Public Class Form

    Dim WithEvents wb As New WebBrowser

    Private Sub Form_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
  wb.ScriptErrorsSuppressed = True 
  Button1.PerformClick()
    End Sub

    Private Sub Button1_Click_1(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        wb.Navigate(New Uri(TextBox1.Text))
    End Sub

    Private Sub wb_DocumentCompleted(sender As Object, e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles wb.DocumentCompleted
        If wb.Document IsNot Nothing Then
            For Each link As HtmlElement In wb.Document.Links
                If link.GetAttribute("href").Contains("googlevideo.com") Then
                    rtxt.AppendText(link.GetAttribute("href") & vbNewLine)
                End If
            Next
        End If
    End Sub
End Class
(24-03-21, 12:08 AM)معاند الحظ كتب : [ -> ]احيرا وبعد حوسه طويلة احب اقولك اخوي أبو روضة ما عنك وعن استخدام WebBrowser
لان الصفحة تولد الروابط بعد تنفيذ امر او كود معين بها (بصراحة لا ادري ما هو)
لكن بعد البحث الطويل ما لقيت عير هذا الحل وان شاء الله ينفعك

فقط ضع زر و textbox لعنوان الصفحة واخر لـ حفظ الروابط



كود :
Imports HtmlAgilityPack
Imports System.Text
Imports System.Net

Public Class Form

    Dim WithEvents wb As New WebBrowser

    Private Sub Form_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
  wb.ScriptErrorsSuppressed = True 
  Button1.PerformClick()
    End Sub

    Private Sub Button1_Click_1(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        wb.Navigate(New Uri(TextBox1.Text))
    End Sub

    Private Sub wb_DocumentCompleted(sender As Object, e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles wb.DocumentCompleted
        If wb.Document IsNot Nothing Then
            For Each link As HtmlElement In wb.Document.Links
                If link.GetAttribute("href").Contains("googlevideo.com") Then
                    rtxt.AppendText(link.GetAttribute("href") & vbNewLine)
                End If
            Next
        End If
    End Sub
End Class


الله يكرم أصلك الطيب أخى الغالى والله وأعتذر تعبتك معايا...
قلت عليك أنك فنان من أول ما تعرفت عليك ودماغك حلوة..
سؤال لو تكرمت :
كيف استخرج أول رابط فقط من الروابط التى تم استخراجها ؟
لآن اريد تحميله .
أنت على العين وعلى الراس اخوي ابو روضه  وما يحتاج تعتذر 
واللي سويته أنا شيئ بسيط وسهل .


طريقة استخراج الرابط الاول هى انك تخرج من الحلقه For Each link As HtmlElement
باستخدام Exit For داخل الجملة الشرطية كالتالي
كود :
For Each link As HtmlElement In wb.Document.Links
               If link.GetAttribute("href").Contains("googlevideo.com") Then
                   rtxt.AppendText(link.GetAttribute("href") & vbNewLine)
Exit For
               End If
           Next
إقتباس :كيف استخرج أول رابط فقط من الروابط التى تم استخراجها ؟

استخدم متغير من نوع تكست مثل هذا التعديل لتجلب به أول قيمة فقط من الروابط 
PHP كود :
Imports HtmlAgilityPack
Imports System
.Text
Imports System
.Net

Public Class Form

    

Dim WithEvents wb 
As New WebBrowser
Dim n 
as integer 
Dim FirstLink 
as string


    Private Sub Form_Load
(sender As System.ObjectAs System.EventArgsHandles MyBase.Load
  wb
.ScriptErrorsSuppressed True 
  Button1
.PerformClick()
 
   End Sub

    Private Sub Button1_Click_1
(sender As System.ObjectAs System.EventArgsHandles Button1.Click  
        wb
.Navigate(New Uri(TextBox1.Text))
 
   End Sub

    Private Sub wb_DocumentCompleted
(sender As ObjectAs System.Windows.Forms.WebBrowserDocumentCompletedEventArgsHandles wb.DocumentCompleted
        If wb
.Document IsNot Nothing Then
        

    For Each link 
As HtmlElement In wb.Document.Links
                n
+=1
If link.GetAttribute("href").Contains("googlevideo.com"Then
                    rtxt
.AppendText(link.GetAttribute("href") & vbNewLine)
If 
n=1 then   
FirstLink 
link.GetAttribute("href")      
End if   
 
               End If
 
           Next
        End 
If
 
   End Sub
End 
Class 
(24-03-21, 01:19 AM)معاند الحظ كتب : [ -> ]أنت على العين وعلى الراس اخوي ابو روضه  وما يحتاج تعتذر 
واللي سويته أنا شيئ بسيط وسهل .


طريقة استخراج الرابط الاول هى انك تخرج من الحلقه For Each link As HtmlElement
باستخدام Exit For داخل الجملة الشرطية كالتالي
كود :
For Each link As HtmlElement In wb.Document.Links
               If link.GetAttribute("href").Contains("googlevideo.com") Then
                   rtxt.AppendText(link.GetAttribute("href") & vbNewLine)
Exit For
               End If
           Next

تسلملى عيونك أخى العزيز ربنا يكرمك ويبارك بعمرك...
تم الحل الحمدلله بفضل الله ثم خبرتك..

(24-03-21, 01:25 AM)أبو عبدالله الحلواني كتب : [ -> ]
إقتباس :كيف استخرج أول رابط فقط من الروابط التى تم استخراجها ؟

استخدم متغير من نوع تكست مثل هذا التعديل لتجلب به أول قيمة فقط من الروابط 
PHP كود :
Imports HtmlAgilityPack
Imports System
.Text
Imports System
.Net

Public Class Form

    

Dim WithEvents wb 
As New WebBrowser
Dim n 
as integer 
Dim FirstLink 
as string


    Private Sub Form_Load
(sender As System.ObjectAs System.EventArgsHandles MyBase.Load
  wb
.ScriptErrorsSuppressed True 
  Button1
.PerformClick()
 
   End Sub

    Private Sub Button1_Click_1
(sender As System.ObjectAs System.EventArgsHandles Button1.Click  
        wb
.Navigate(New Uri(TextBox1.Text))
 
   End Sub

    Private Sub wb_DocumentCompleted
(sender As ObjectAs System.Windows.Forms.WebBrowserDocumentCompletedEventArgsHandles wb.DocumentCompleted
        If wb
.Document IsNot Nothing Then
        

    For Each link 
As HtmlElement In wb.Document.Links
                n
+=1
If link.GetAttribute("href").Contains("googlevideo.com"Then
                    rtxt
.AppendText(link.GetAttribute("href") & vbNewLine)
If 
n=1 then   
FirstLink 
link.GetAttribute("href"     
End 
if   
                End 
If
 
           Next
        End 
If
 
   End Sub
End 
Class 

ربنا يكرمك ويبارك بعمرك أخى الغالى...