Модераторы: diadiavova, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> помогите в WebBrowser нажать на кнопку 
:(
    Опции темы
araratus
Дата 23.8.2011, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.8.2011

Репутация: нет
Всего: нет



суть проблемы . попросили меня сделать программу которая будет проверять доступность призов по акции. Сайт www.bondstreet.ru . на главной странице получается заполнить текстовые поля. Не получается нажать на вход.   КАК ЭТО СДЕЛАТЬ .
Код


Public Class Form2

    Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Form1.Visible = False
        WebBrowser1.Navigate("www.bondstreet.ru")
    End Sub

    Private Sub WebBrowser1_DocumentCompleted(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
        Application.DoEvents()
        WebBrowser1.Document.All("Login").InnerText = Form1.IMY
        WebBrowser1.Document.All("Password").InnerText = Form1.PAR


    End Sub
End Class


 в форме 1 вводятся пароль и логин. Уже дня 4 мучаюсь ничего не получается. Заранее спасибо.

PM MAIL   Вверх
diadiavova
Дата 23.8.2011, 22:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Или вызвать метод submit HTML-формы или надо получить доступ к кнопке отправки и вызывать метод click. Вот рядом тема, там похожая проблема решалась
http://forum.vingrad.ru/forum/topic-336268...horization.html


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
araratus
Дата 23.8.2011, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.8.2011

Репутация: нет
Всего: нет



буду разбираться, если что не пойму напишу

МЕТОД ПОМОГ , ЗАВТРА ДАЛЬШЕ РАЗБИРАТЬ НАЧНУ 

-С-П-А-С-И-Б-О-

Это сообщение отредактировал(а) araratus - 23.8.2011, 22:39
PM MAIL   Вверх
araratus
Дата 30.8.2011, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.8.2011

Репутация: нет
Всего: нет



появилась ещё одна проблема,  на странице сайта отвечающей за заказ призов при наличии приза появляется "капча" и поле ввода. Если призов нет этих элементов нет. 
код поля ввода
<input type="text" onclick="return { oRequired : { } }" maxlength="15" size="12" name="Captcha" class="zf" value="">
код капчи
<img src="http://www.bondstreet.ru/inside/captcha.shtml?uuid=10027134e5d0fcceaeae" class="png" alt="" width="106">
как мне программно узнать есть ли данные элементы на странице.
Если приза нет вместо этого появляется текст
<div class="zf-error" style="display: block;">Заказ приза временно недоступен, жди следующей недели.</div>
заранее спасибо. smile 
PM MAIL   Вверх
diadiavova
Дата 30.8.2011, 20:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



araratus, ну это ведь вопрос даже не по браузеру, а скорее по модели DOM. Тут масса способов, самый оптимальный можно выбрать зная код всей страницы. Ну например можно получить все элементы div на странице, обойти их в цикле и проверить, есть ли среди них такой у которого class="zf-error".



--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
araratus
Дата 6.9.2011, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.8.2011

Репутация: нет
Всего: нет



здрасте ещё разок.

прочитал, в принципе идею понял нашел на MSDN похожий пример
решил попробовать пример сделать на этой основе. На форме с веббраузером в listbox должны были выводится все 
эл-ы div и их атрибут class
 
 пример  определяет 105 элементов с тегом <DIV> 
а дальше процесс не идёт 
Код

Public Class Form1
    Dim i As Integer


    Private Sub DisplayMetaDescription()
        If (WebBrowser1.Document IsNot Nothing) Then
            Dim Elems As HtmlElementCollection
            Dim WebOC As WebBrowser = WebBrowser1

            Elems = WebOC.Document.GetElementsByTagName("div")

            For Each elem As HtmlElement In Elems
                i = i + 1
                Dim NameStr As String = elem.GetAttribute("class")
                ListBox1.Items.Add(i & "й <div> class=" & NameStr)
            Next

        End If
    End Sub


    Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
        DisplayMetaDescription()

    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        WebBrowser1.Navigate("http://msdn.microsoft.com")

    End Sub
End Class


результат список
типа
N й <DIV> class=   . значение атрибута не выводится.
что я не так smile  сделал
PM MAIL   Вверх
diadiavova
Дата 6.9.2011, 21:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Цитата(araratus @  6.9.2011,  22:12 Найти цитируемый пост)
N й <DIV> class=   . значение атрибута не выводится.
что я не так 

Если мне не изменяет память, значение атрибута "class" не получить с помощью GetAttribute. Его в модели DOM получают с помощью свойства className, поэтому в твоем случае вместо 
Код

                Dim NameStr As String = elem.GetAttribute("class")

Надо написать
Код

                Dim NameStr As String = elem.DomElement.className

Должно сработать.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
araratus
Дата 23.9.2011, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.8.2011

Репутация: нет
Всего: нет



привет это опять я(давно не заходил всё времени нет работы навалили),в  принципе все сделал. Остался последний штрих. При появление приза( когда нужно заказ делать появляется капча . Вид у неё  http://www.bondstreet.ru/inside/captcha.sh...134e7cc6844f1fe как мне эту хрень в PictureBox вывести . не получается я думаю что из за того что формат не рисунка а shtml , хотя могу ошибатся) 
----поможите уж нубу---
---с каждым днём изучения vbnet всё больше убеждаюсь что знаю очень мало---
PM MAIL   Вверх
diadiavova
Дата 23.9.2011, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Цитата(araratus @  23.9.2011,  22:11 Найти цитируемый пост)
 Вид у неё

У меня отображается пустая страница. 

Тебе надо получить изображение, которое отображается на картинке в браузере? Тогда вот 
http://forum.vingrad.ru/forum/topic-285495...y2060225/0.html


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
araratus
Дата 23.9.2011, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.8.2011

Репутация: нет
Всего: нет



даже если ссылку копируешь и вводишь как адрес выводится абракадабра, браузер хром показывает тип у неё 
captcha.shtml
Dimensions212 × 74
File size2.49KB
MIME typetext/html
URLhttp://www.bondstreet.ru/inside/captcha.shtml?uuid=10027134e7cd114bbd6a
 
переход по адресу и 
����JFIF��;CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), quality = 90 ��C         ��C         ��J�"��      ���}!1AQa"q2���#B��R��$3br� %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� ���w!1AQaq"2�B����    #3R�br� $4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?���+�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� ���4_���Z�m4�rp�eM�8��_¼���ߋ.�O��#g�xOK���M����͙�hl��ه;q�׃_|E���ڷJ���P�|������!7p���(���N�I����ҕ�����Q^��<$�E܎���m�-).ūjvktx� �o��s���ګ��� �]�i�$�o�jRǦ�6� �c���_]��<1�x)o4���7��m�ŮGq�k�����ǰ4��N6R��{S�4w1,�H���*�A{O��`�����z�Մ����ա��[C ��Vv�����I�� �~?�h�������Mg��i�K�� ��A�|���mM��Ey��?�:w�a���g^h"���Z6��9��� ��5贈qqvaEPHQHHN)h��(��(��(��(��(��(��(��(ɾ4x������O��8o��r�\+� �''�x�-�z�M���-��V k� ��}�l1B�q|���縮��w���O��m������I���.t�*v�,��|�]���ףZ~��-�F$�\�� |c��kԘɭ�A�H4�8� 0��("����z�E�����G������N�u~<��ϑ���b�B�"ԧ���E�;P�����N>+j~"��n�����QQmuo��<�A���`/��~||N��|��[C�~x�W�>!��0J-�ܳ��*�̞`��W8,rN�J����������ƨ\�b3I�Z�M;��MER9B�(��(��(��(��(��(��(��(�������EΙ�$�Y��$S�,@ ���Ð:ZP��9��߄ڕ���4��(�d��/��)\�w�wa���ֻ�t���V:}��?(^�W�    �˿�'����PS�n��|���̟4��KŚ����oxC�1!����p�*\" a�s���k��)� �������7о�v A�� d�wK;wy��}Ms�(��>���W���[M_S��Y=ۻ��c�A�zU�$?�<�x*��Z�g�Z����X��L�s���R%��QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE�� 
 как это победить?

PM MAIL   Вверх
diadiavova
Дата 23.9.2011, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Цитата(araratus @  23.9.2011,  22:40 Найти цитируемый пост)
как это победить?

Ты не объяснил что хочешь сделать.

Добавлено через 1 минуту и 29 секунд
Тебе нодо загрузить картинку с этого адреса или скопировать ее в пикчербокс из веббраузера. По второму случаю я тебе ссылку дал


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
araratus
Дата 23.9.2011, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.8.2011

Репутация: нет
Всего: нет



буду разбиратся спасибо

PM MAIL   Вверх
araratus
Дата 26.9.2011, 21:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.8.2011

Репутация: нет
Всего: нет



способ что то не  работает, а нельзя просто сохранить капчу в файл. поменять .shtml на .jpeg и далее делать с ним что хочешь.   Если можно подскажи как это сделать плиз. 
PM MAIL   Вверх
diadiavova
Дата 26.9.2011, 22:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Цитата(araratus @  26.9.2011,  22:36 Найти цитируемый пост)
способ что то не  работает

Работает. С его помощью можно не только картинку, но и любой фрагмент страницы сохранить как изображение, в том числе в файл.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
araratus
Дата 18.10.2011, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 23.8.2011

Репутация: нет
Всего: нет



Привет всем, программу сделал. На форме разместил ещё один веббраузер и вывел на него капчу.
Всё работает, но есть одно но. В момент выкладки призов сервер виснет и выдаёт ошибки 502 и 504 из за этой чуши работа программы сбивается. ПОДСКАЖИТЕ КАК ГРАМОТНО ОБРАБОТАТЬ эти ошибки сервера.
Или тему похожую посоветуйте.
----ЗАРАНЕЕ СПАСИБО---
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума VB .NET
diadiavova
  • Прежде чем задать вопрос, воспользуйтесь поиском: возможно Ваш вопрос уже обсуждался и на него был получен ответ.
  • Если такой же вопрос не найден, не стоит задавать свой вопрос в любую тему, создайте новую.
  • Заголовок темы должен отображать ее суть.
  • Содержание поста должно описывать проблему понятно, но в то же время, по возможности, лаконично. Сначала следует описать суть вопроса, потом можно привести пример кода, не вынуждайте других участников угадывать в чем Ваша проблема - телепатов здесь нет.
  • Будьте взаимно вежливы и дружелюбны.
  • При оформлении сообщений используйте форматирование, примеры кода заключайте в теги [CODE=vbnet][/CODE].
  • Также ознакомьтесь с общими правилами, действующими на всем форуме.
  • Если вопрос решен, не забывайте помечать тему решенной(вверху темы есть ссылка). Кроме того, если Вы хотите отблагодарить участников, оказавших помощь в решении, можно повысить им репутацию, в случае, если у Вас менее 100 сообщений в форуме и функция изменения репутации Вам недоступна, можете написать сюда.
  • Общие вопросы по программированию на платформе .NET обсуждаются здесь.
  • Литература по VB .NET обсуждается здесь.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0563 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.