Hyperlinks Zählen

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von nafets3646.

    Hyperlinks Zählen

    Hallo!

    Ich lasse mir in VB auf einer Website mit folgendem Code jeden link ausgeben, der "wma" beinhaltet:

    Quellcode

    1. For Each ele As HtmlElement In WebBrowser2.Document.All
    2. If ele.GetAttribute("href").ToLower.Contains("wma") Then
    3. Dim links As String = ele.GetAttribute("href") RichTextBox1.Text = links End If
    4. Next



    Wenn ich mir dann "links" in einer MessageBox ausgeben lassen will, wird für jeden Link der "wma" beinhaltet eine MessageBox geöffnet wo auch dieser drinsteht. Soweit, so gut.

    Wenn ich mir das ganze aber in einer Richtextbox ausgeben lassen will, gibt er mir nur einen Link aus, undzwar den "letzten".

    Als Beispiel:

    Link1

    Link2

    Link3

    Link4


    Er gibt mir dann die Adresse von Link 4 aus.
    Das Problem: Ich brauche nur den ersten, auch wenn neue Links dazukommen.

    Gibt es also eine Möglichkeit, ihn die Links die er findet "zählen" zu lassen und nur den letzten auszugeben?
    Mit Regex würde es nicht funktionieren, da die Adressen alle fast gleich aufgebaut sind.

    Vielen Dank!

    PRiiME schrieb:

    VB.NET-Quellcode

    1. RichTextBox1.Text = links
    Vielleicht solltest Du zunächst üben, wie man in einer RichTextBox Zeilen hinzufügt:

    VB.NET-Quellcode

    1. RichTextBox1.AppendText(links & Environment.NewLine)
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    PRiiME schrieb:

    Das war weil ich
    mit jedem Vorkommen den gesamten Text ersetzt habe und damit alles, was vorher drin stand, in den Jordan gekippt habe. :rolleyes:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @PRiiME: Lernresistent?
    Poste mal ein Bild Deiner (Rich)TextBox.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ich mach's nicht gerne, aber hier ist der komplette Code, den du brauchst:

    VB.NET-Quellcode

    1. Dim link As String = ""
    2. For Each ele As HtmlElement In WebBrowser2.Document.All
    3. If ele.GetAttribute("href").ToLower.Contains("wma") Then
    4. link = ele.GetAttribute("href")
    5. Exit For
    6. End If
    7. Next
    8. MessageBox.Show(link) 'link verarbeiten