Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/10: Рейтинг темы: голосов - 10, средняя оценка - 4.50
pengu
5 / 5 / 1
Регистрация: 03.01.2012
Сообщений: 124
1

Клик по кнопке в браузере, кнопка представляет из себя картинку

03.01.2012, 20:30. Просмотров 1737. Ответов 9
Метки нет (Все метки)

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
HtmlElementCollection allelements = webBrowser1.Document.All;
            foreach (HtmlElement webpageelement in allelements)
            {
                if (webpageelement.GetAttribute("name") == "ulogin")
                {
                    webpageelement.SetAttribute("value", textBox1.Text);
                }
                if (webpageelement.GetAttribute("name") == "pass")
                {
                    webpageelement.SetAttribute("value", textBox2.Text);
                }
                if (webpageelement.GetAttribute("src") == "img/registr.gif")
                {
                    webpageelement.InvokeMember("click");
                }
                if (webpageelement.GetAttribute("name") == "pass1")
                {
                    webpageelement.SetAttribute("value", textBox3.Text);
                }
                if (webpageelement.GetAttribute("name") == "Submit")
                {
                    webpageelement.InvokeMember("click");
                }
            }
Есть один сайт и этот кусок кода. Проблема в том, что на сайте, чтобы войти, нужно нажать на кнопку (img/registr.gif), и ни name ни id у нее нет поэтому единственное, что пришло в голову - это поиск по scr, но так программа не кликает на эту кнопку и соответственно ничего после не происходит (кроме заполненых полей логина и пароля). Что я делаю не так? Если была такая тема, ткните носом.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2012, 20:30
Ответы с готовыми решениями:

Что из себя представляет каждый элемент массива string[] args
знаю ,что не совсем по теме,но все же.Что из себя представляет каждый элемент...

Как лучше всего распарсить текст, который представляет из себя код C#
Пишу программку в которой требуется анализировать текст, сам текст представляет...

Программный клик по кнопке в WebBrowser
<div class="contractLink"><button type="button" value="Увеличить уровень"...

Клик по кнопке из другого потока
Помогите пожалуйста, запускаю я поток и в нем пытаюсь кликнуть по кнопке...

Клик по javascript кнопке в webBrowser
Собственно, как кликнуть по джаваскрипту в браузере?

9
NoMasters
Псевдослучайный
1909 / 1120 / 90
Регистрация: 13.09.2011
Сообщений: 3,178
03.01.2012, 21:47 2
Там обвязка на яваскрипте что ли вокруг этой кнопки? Если нет ищи по типу submit.
Вообще это проктология какая-то, почему сразу не отправить интересующий запрос со всеми параметрами?
0
pengu
5 / 5 / 1
Регистрация: 03.01.2012
Сообщений: 124
03.01.2012, 22:07  [ТС] 3
Нет, без скрипта, вот
HTML5
1
<input name="" type="image" src="img/registr.gif" class="nobrd">
Это даже не кнопка, а просто картинка, которая при нажатии выполняет функцию кнопки "Вход". По submit тоже не выходит.
Может быть, просто я только вчера узнал, что такое C#.
Я точно знаю, что можно както нажать, потомучто есть программа, которая нажимает, но автор мне точно не скажет какую черную магию он использовал.
0
NoMasters
Псевдослучайный
1909 / 1120 / 90
Регистрация: 13.09.2011
Сообщений: 3,178
03.01.2012, 22:28 4
И как по-твоему по клику на эту картинку должен происходить запрос, если она не имеет соответствующего типа и нет обвязки?
И таки почему руками не собрать нужный post-запрос?
0
pengu
5 / 5 / 1
Регистрация: 03.01.2012
Сообщений: 124
03.01.2012, 22:33  [ТС] 5
Я не знаю как :С
вот сайт wmmail.ru, если можешь, подскажи хотябы примерно каким куском кода надо задавать чтобы программа нажимала на кнопку возле логина и пароля. Буду очень благодарен.
0
NoMasters
Псевдослучайный
1909 / 1120 / 90
Регистрация: 13.09.2011
Сообщений: 3,178
03.01.2012, 23:03 6
Тут же css2 selector'ы есть? Ищи по "input[type=image]"
И таки я настоятельно советую руками собирать запрос. Будет гораздо дешевле и быстрее(стартовую страницу грузить не надо будет).
0
pengu
5 / 5 / 1
Регистрация: 03.01.2012
Сообщений: 124
04.01.2012, 01:16  [ТС] 7
Дело в том, что я не знаю как
А ведь можно задать координаты клика? тоесть чтобы не искало элемент, ато просто щелкнуло по заданным координатам?

Добавлено через 1 час 23 минуты
Цитата Сообщение от NoMasters Посмотреть сообщение
И таки я настоятельно советую руками собирать запрос. Будет гораздо дешевле и быстрее(стартовую страницу грузить не надо будет).
Можешь поподробнее с этого места? Спасибо
0
Vitall
754 / 534 / 80
Регистрация: 03.07.2011
Сообщений: 1,020
04.01.2012, 01:55 8
Магия в том что атрибут src имеет значение "http://www.wmmail.ru/img/registr.gif" а не "img/registr.gif"
C#
1
2
3
4
5
6
7
8
9
10
 private void button2_Click(object sender, EventArgs e)
        {   
            foreach (HtmlElement jh in webBrowser1.Document.GetElementsByTagName("input"))
            { 
                if (jh.GetAttribute("src") == "http://www.wmmail.ru/img/registr.gif")
                {  
                    jh.InvokeMember("click");
                }
            }   
        }
правда у этого сайта есть еще один глюк ,после загрузки страницы не вызывается событие webBrowser1_DocumentCompleted (
1
pengu
5 / 5 / 1
Регистрация: 03.01.2012
Сообщений: 124
04.01.2012, 02:47  [ТС] 9
Хм, я думал только у меня не вызывается webBrowser1_DocumentCompleted. Часа 2 назад еще вызывалось, думал чтото напутал 2 часа ошибку искал .
Спасибо большое, ато у меня уже руки опустились)

Добавлено через 29 минут
Цитата Сообщение от pengu Посмотреть сообщение
Часа 2 назад еще вызывалось
уже опять вызывается, странно
0
Vitall
754 / 534 / 80
Регистрация: 03.07.2011
Сообщений: 1,020
04.01.2012, 03:00 10
Цитата Сообщение от pengu Посмотреть сообщение
уже опять вызывается, странно
Думаю это из-за флеш анимации .Знаю один сайт где webBrowser1_DocumentCompleted 4 раза вызывается после загрузки ,приходилось счетчик ставить
0
04.01.2012, 03:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2012, 03:00

Не проходит клик по кнопке, расположенной на сайте
Здравствуйте, форумчане! В общем, проблема такова: Есть сайт с кнопкой (как...

Клик по кнопке в браузере
добрый вечер) суть дела состоит в следующем - хочу, чтобы программа в браузере...

Клик по кнопке в браузере
День добрый! Подскажите возможно ли программно нажать на ссылку или кнопку к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru