Как получить доступ к элементу HTML по значению onclick в C #? - PullRequest
1 голос
/ 22 мая 2019

Я пытаюсь написать бота для чтения или базы данных и заполнить онлайн-форму HTML.во время этого процесса в форме есть кнопка, которую нужно нажать для редактирования онлайн-формы.Мне нужно нажать на это с C #.Кнопка выглядит следующим образом в DOM Explorer

DOM Explorer

Как показывает код, элемент не имеет идентификатора.Я пробовал следующие коды, ни один из них не работает

HtmlElementCollection buttons = webBrowser1.Document.GetElementsByTagName("button");
        foreach (HtmlElement btn in buttons)
        {
            if (btn.InnerText != null)
            {
                if (btn.InnerText.Equals("Edit"))
                {

                    btn.InvokeMember("Click");
                    btn.RaiseEvent("onclick");
                }
            }

        }

Я также пробовал следующее:

HtmlElementCollection elements = webBrowser1.Document.GetElementsByTagName("button");
        HtmlElement wanted;

        foreach (HtmlElement item in elements)
        {
            if (item.GetAttribute("onclick") == "edit(this,'bss','fieldsurveyportal');")
            {
                wanted = item;
                break;
            }
        }

Я не уверен, даже это возможно или нет!Когда я подсчитываю количество тегов Button в webBrowser1.Document.GetElementsByTagName ("button"), оно намного меньше, чем в DOM Explorer

...