我正在编写一个Web自动化,根据存储的数据填写冗长的在线表单,然后通知用户结果。我自动化的网站命名它的所有对象,但不使用id标记。是否有类似HtmlDocument.GetElementById的名称标签?我不认为GetElementsByTagName是对的。它不返回特定元素,而是生成数组。
答案 0 :(得分:2)
您可以迭代GetElementsByTagName
返回的元素并检查其name
属性(与标记名称不同)。
GetElementByTagName
获取具有相同元素名称的所有元素(因此对于图像,标记名称为img
)。
var inputs = GetElementsByTagName("input");
for(var input in inputs)
{
if(input.GetAttribute("name") == nameIAmLookingFor)
{
// do something
break;
}
}