MISE À JOUR
En fait, je viens de voir les informations qu'il ya ie.ElementWithTag maintenant, regardez this question.
Alors peut-être reste de cet article ne sera pas utile que
Ne pas avoir de solution prête pour vous, mais peut-être un point de départ.
Il y a (longtemps), j'écrivais un script d'automatisation pour une page. J'ai utilisé powershell mais il devrait être facile de migrer vers C# (que je suppose que vous utilisez).
Donc, dans cette partie du script que je recherche sur » élément de page qui a une entrée d'étiquette et est nommé Enregistrer les modifications.
#getting property from com object::IHTMLDOMAttribute
function getProperty ([System.__ComObject] $obj, [string] $prop)
{
[System.__ComObject].InvokeMember($prop, [System.Reflection.BindingFlags]::GetProperty, $null, $obj, $null)
}
$ie = new-object -com "InternetExplorer.Application";
$ie.visible = $true;
$ie.navigate("http://mytestpage.com");
$doc = $ie.Document;
$saveButton = $null;
$inputElts = $null;
$inputElts = $doc.getElementsByTagName('input')
foreach ($elt in $inputElts)
{
$a = $elt.getAttributeNode('value')
if ($a -and (getProperty $a 'nodeValue') -eq 'Save changes')
{
$saveButton = $elt;
break;
}
}
Donc, si vous remplacer une partie en boucle qui recherche Sauver la propriété Les modifications de l'élément (et supprimer la déclaration getProperty) avec contrôle pour la classe appropriée qu'il devrait faire l'affaire.