Obtenir des Liens URL à partir d'une page web-Excel VBA
Je veux écrire une macro qui va prendre le résultat de la recherche liens dans une page web. Je l'ai écrit
Sub webpage()
Dim internet As InternetExplorer
Dim internetdata As HTMLDocument
Dim internetlink As Object
Dim internetinnerlink As Object
Set internet = CreateObject("InternetExplorer.Application")
internet.Visible = True
internet.Navigate ("URL")
Do While internet.Busy
DoEvents
Loop
Do Until internet.ReadyState = READYSTATE_COMPLETE
DoEvents
Loop
Set internetdata = internet.Document
Set internetlink = internetdata.getElementsByTagName("a")
i = 1
For Each internetinnerlink In internetlink
ActiveSheet.Cells(i, 2) = internetinnerlink.href
i = i + 1
Next internetinnerlink
End Sub
Code ci-dessus prend tous les liens de la page web, mais j'ai besoin que les résultats de recherche des liens. j'ai téléchargé une image, si c'est ma page, j'ai besoin de ne prendre que le résultat de la recherche de liens et de ne pas tous les liens. merci de m'aider à résoudre ce
OriginalL'auteur Matchendran | 2013-11-14
Vous devez vous connecter pour publier un commentaire.
Essayer ce code
Votre code fonctionne parfaitement, Mais si j'utilise href propriété pour obtenir les liens , iam "cet Objet ne gère pas cette propriété ou cette méthode" erreur
Set internetdata = internet.Document Set internetdatalink = internetdata.getElementById("rso") Set internetlink = internetdatalink.getElementsByTagName("h3") For Each texttext In internetlink ActiveSheet.Cells(i, 2).Value = texttext.href i = i + 1 Next texttext
c'est le code iam à l'aide deSon bcoz <h3> balise ne pas avoir href propriété où, comme <a> tag.
Pour obtenir le lien, je l'ai écrit,
Set internetlink = internetdatalink.getElementsByTagName("h3") Set interinnerlink = internetlink.getElementsByTagName("a")
Iam se même "Objet Ne gère pas cette propriété ou cette méthode d'Erreur" pointant sur la deuxième ligne...internetlink est un en-tête de l'objet de sorte qu'il ne sera bien évidemment pas avoir tous les éléments.
internetlink.getElementsByTagName("a")
semble incorrect. Essayez de déboguer le code en ajoutant de la fenêtre d'observation pour une meilleure compréhension des objets.OriginalL'auteur Santosh