Помогите разобраться

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
theal
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 148
Зарегистрирован: 03.05.2009 (Вс) 16:12

Помогите разобраться

Сообщение theal » 07.01.2013 (Пн) 23:06

Уважаемые программисты! Помогите разобраться в такой ситуации.Я вхожу в аккаунт почтовика и перехожу в раздел письма. Почему при клике в Webbrowser мышкой по ссылке открывается всё правильно , срабатывает таймер отсчёта чтения письма. А вот при клике посредством testlink.click пишется ,что такого письма у данного пользователя не обнаружено.То есть ОШИБКА. В чём тут проблема и как можно её решить? Заранее спасибо.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 07.01.2013 (Пн) 23:25

Что такое testlink??

theal
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 148
Зарегистрирован: 03.05.2009 (Вс) 16:12

Re: Помогите разобраться

Сообщение theal » 07.01.2013 (Пн) 23:33

Private Sub Command11_Click()
On Error Resume Next
For Each testlink In WebBrowser1.Document.links
If InStr(1, testlink.href, "index.php?cf=pmail-readm&uid=1034038&mid=", vbTextCompare) Then
Text5 = testlink.href
testlink.click
Exit For
End If

Next testlink

End Sub

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 07.01.2013 (Пн) 23:51

Я это уже видел. И выдели как код.
Давай весь проект.

PS: Хакер, может свалишь последние вопросы ala-x'а и theal'а в одну тему (ну или в 2 по авторам), а то в них уже разобраться невозможно :(

theal
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 148
Зарегистрирован: 03.05.2009 (Вс) 16:12

Re: Помогите разобраться

Сообщение theal » 07.01.2013 (Пн) 23:56

Код: Выделить всё
Private Sub Command1_Click()
WebBrowser1.Document.All("wmid").Value = Text1.Text
WebBrowser1.Document.All("pass").Value = Text2.Text
WebBrowser1.Document.All("subent").Click
End Sub

Private Sub Command2_Click()
For Each TestLink In WebBrowser1.Document.links
    If InStr(1, TestLink.href, "php?action=members&where=serf", vbTextCompare) Then
    Text5 = TestLink.innerText
        TestLink.Click
        Exit For
    End If
Next TestLink
End Sub

Private Sub Command3_Click()

For Each TestLink In WebBrowser1.Document.links
    If InStr(1, TestLink.href, "go.php", vbTextCompare) Then
    Text5 = TestLink.innerText
        TestLink.Click
        Exit For
    End If
Next TestLink
End Sub

Private Sub Form_Load()
WebBrowser1.RegisterAsBrowser = True
WebBrowser1.Navigate "www.web-ip.ru"
End Sub






Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.01.2013 (Вт) 0:02

Qwertiy писал(а):Давай весь проект.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.01.2013 (Вт) 0:12

Аналог этого можешь применить для логина: Document.GetElementsByTagName("form")[0].InvokeMember("Submit")?

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 08.01.2013 (Вт) 19:46

Выдаёт ошибку..куда его надо вставить?

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.01.2013 (Вт) 21:18

ala-x писал(а):Выдаёт ошибку..куда его надо вставить?

Знаешь, сложновать ответить, куда в VB6 надо совать строчку, представляющую собой помесь VB.NET и Javascript...
Для начала, замени квадратные скобки на круглые. Потом проверь имена методов.

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 08.01.2013 (Вт) 21:24

почему в скобках ноль?мне нужна авторизация при клике.тоесть не потерять сессию,чем это поможет?

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 08.01.2013 (Вт) 21:44

Код: Выделить всё
'Загружаю сайт
Private Sub Form_Load()
WebBrowser1.RegisterAsBrowser = True
WebBrowser1.Navigate "www.web-ip.ru"
End Sub


'Здесь авторизуюсь на сайте
Private Sub Command1_Click()
WebBrowser1.Document.All("wmid").Value = Text1.Text
WebBrowser1.Document.All("pass").Value = Text2.Text
WebBrowser1.Document.All("subent").Click
End Sub

'Перехожу в меню серфинга
Private Sub Command2_Click()
For Each TestLink In WebBrowser1.Document.links
    If InStr(1, TestLink.href, "php?action=members&where=serf", vbTextCompare) Then
    Text5 = TestLink.innerText
        TestLink.Click
        Exit For
    End If
Next TestLink
End Sub

'Тут открывается меню (ссылка где кликнуть и начать)---кликаю
Private Sub Command3_Click()

For Each TestLink In WebBrowser1.Document.links
    If InStr(1, TestLink.href, "go.php", vbTextCompare) Then
    Text5 = TestLink.innerText
        TestLink.Click                               ' ----и тут ошибка(сессия потеряна)
        Exit For
    End If
Next TestLink
End Sub







Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.01.2013 (Вт) 21:47

ala-x писал(а):мне нужна авторизация при клике.тоесть не потерять сессию,чем это поможет?

Если твоя авторизация и так успешна, то вряд ли. Если нет, то это должно успешно выполнить авторизацию.

ala-x писал(а):почему в скобках ноль?

0 - индекс единственного элемента в массиве.

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 08.01.2013 (Вт) 21:55

Посмотрите пожалуйста на код. Может где то допустил ошибку? при клике на ссылку открывается окно в webbrowser2. Если просто открывать его в новом окне(без веббраузера2) естественно меняется браузер и тоже ошибка.(сайт в webbrowser1 а ссылка в IE)

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.01.2013 (Вт) 22:03

ala-x писал(а):Посмотрите пожалуйста на код. Может где то допустил ошибку? при клике на ссылку открывается окно в webbrowser2. Если просто открывать его в новом окне(без веббраузера2) естественно меняется браузер и тоже ошибка.(сайт в webbrowser1 а ссылка в IE)

Вопрос из серии "а вдруг". Document_Completed происходит до клика по кнопке?

PS: Давай всё писать в одной теме.

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 08.01.2013 (Вт) 22:09

В каком смысле? Вы считаете что сессия завершается до клика?Я не уверен,потому что первое окно по прежнему в аккаунте. И по аккаунту можно перемещаться спокойно. Все другие разделы работают нормально.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.01.2013 (Вт) 22:26

ala-x писал(а):В каком смысле? Вы считаете что сессия завершается до клика?

Нет. Что документ не успел загрузиться, поэтому чего-то не хватает.

ala-x писал(а):
Qwertiy писал(а):А если вместо щелчка по кнопке щёлкать мышью по ссылке, то в обоих окнах всё нормально?

ДА! Именно так

Хотя непохоже...
А что если ссылку в том же окне открывать?

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 08.01.2013 (Вт) 22:29

тоже самое..если мышью--получается.программно---нет

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.01.2013 (Вт) 22:34

Посмотри фиддлером посылаемые запросы. В чём разница?

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 08.01.2013 (Вт) 22:37

где его взять? сниффер пойдёт?

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Re: Помогите разобраться

Сообщение Qwertiy » 08.01.2013 (Вт) 23:04

ala-x писал(а):где его взять?

Погуглить. Первая же ссылка.

ala-x писал(а):сниффер пойдёт?

Не думаю.

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 08.01.2013 (Вт) 23:27

не вижу разницу в кликах.Где именно смотреть в фиддлере?

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.01.2013 (Вт) 23:32

Запущенный Фиддлер держит локальный прокси-сервер, через который проходят запросы. Там показывается посылаемый http-запрос. Сравни запросы. Они должны чем-то отличаться, иначе бы всё работало.

PS: Если с Фиддлером всё неожиданно заработало, придётся думать отдельно...


Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 08.01.2013 (Вт) 23:50

Зачем мне эта свалка ссылок. Выбери одну, кликни программно. Затем её же (возможно, после обновления страницы) мышью. Если url окажутся разными, попробуй такие действия в другом порядке. Опера, например, однажды открыв ссылку запоминает переадресацию.

Я правильно понимаю, что url'ы разные?
Вообще-то, я ожидал различия в http-заголовках запроса (смотреть на вкладке Raw).

Запрашиваемые скритты скорее всего не важны. Смотри где content-type text/html и завершившиеся ошибкой запросы, если такие есть.

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 08.01.2013 (Вт) 23:56

дело в том что это клик по одной и тойже ссылке программно получилось что открылось - 3 а мышью - вся эта куча

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 09.01.2013 (Ср) 0:00

вот с вкладки рав
программа
Код: Выделить всё
GET /index.php?cf=pmail-readm&uid=1034038&mid=114698&rnd=1b59000b4444a95a8f451a4715b147d3 HTTP/1.1
Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/msword, application/vnd.ms-excel, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*
Accept-Language: ru
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0)
Connection: Keep-Alive
Host: www.wmmail.ru
Cookie: wmmailru=e577fd3a5b3cdc4e3260b0cb8d24b38e; b=b; b=b


а это мышь
Код: Выделить всё
GET http://www.wmmail.ru/index.php?cf=pmail-readm&uid=1034038&mid=114697&rnd=1b59000b4444a95a8f451a4715b147d3 HTTP/1.1
Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/msword, application/vnd.ms-excel, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*
Accept-Language: ru
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0)
Connection: Keep-Alive
Host: www.wmmail.ru
Cookie: wmmailru=e577fd3a5b3cdc4e3260b0cb8d24b38e; b=b; b=b


Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 09.01.2013 (Ср) 0:11

Url. Обращение от мыши идёт на полный адрес, а твоё на адрес относительно корня. Измени свойство href ссылки перед кликом, посмотрим что будет.
Куки одинаковые, referer в обоих случаях отсутствует.

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 09.01.2013 (Ср) 0:16

прога
Код: Выделить всё
GET http://www.wmmail.ru/index.php?cf=pmail-readm&uid=1034038&mid=114708&rnd=215528b7453ff71cccf863d9aff4952e HTTP/1.1
Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/msword, application/vnd.ms-excel, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*
Accept-Language: ru
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0)
Connection: Keep-Alive
Host: www.wmmail.ru
Cookie: wmmailru=e577fd3a5b3cdc4e3260b0cb8d24b38e; b=b; b=b



мышь
Код: Выделить всё
GET http://www.wmmail.ru/index.php?cf=pmail-readm&uid=1034038&mid=114708&rnd=215528b7453ff71cccf863d9aff4952e HTTP/1.1
Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/msword, application/vnd.ms-excel, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*
Accept-Language: ru
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0)
Connection: Keep-Alive
Host: www.wmmail.ru
Cookie: wmmailru=e577fd3a5b3cdc4e3260b0cb8d24b38e; b=b; b=b


и опять та же ошибка

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 09.01.2013 (Ср) 0:20

Если сначала открыть мышью, а потом программно, то что-то меняется?

ala-x
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 16.05.2009 (Сб) 16:03

Re: Помогите разобраться

Сообщение ala-x » 09.01.2013 (Ср) 0:21

я тут заметил что грузится какая то картинка вот клик проги
Код: Выделить всё
GET http://www.wmmail.ru/bn/02/97/08.png HTTP/1.1
Accept: */*
Referer: http://www.wmmail.ru/index.php?cf=mail-readpmail&mid=114707
Accept-Language: ru
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0)
Host: www.wmmail.ru
Connection: Keep-Alive
Cookie: wmmailru=e577fd3a5b3cdc4e3260b0cb8d24b38e; b=b; b=b


а это мышь
Код: Выделить всё
[code]GET http://www.wmmail.ru/bn/01/94/15.gif HTTP/1.1
Accept: */*
Referer: http://www.wmmail.ru/index.php?cf=pmail-readm&uid=1034038&mid=114708&rnd=215528b7453ff71cccf863d9aff4952e
Accept-Language: ru
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0)
Host: www.wmmail.ru
Connection: Keep-Alive
Cookie: wmmailru=e577fd3a5b3cdc4e3260b0cb8d24b38e; b=b; b=b

[/code]

След.

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 63

    TopList