Войти

Показать полную графическую версию : [решено] Отследить переход по ссылке


morgan1991
07-08-2009, 00:15
Здравствуйте!
Скажите пожалуйста, реально ли отследить переход пользователем по определённый ссылке с любого браузера?
Нужно вообщем так:
Программа ждёт пока пользователь зайдёт по ссылке например: http://test.ru/test.html с любого браузера и как только он это сделал выдать сообщение "Спасибо!".

timsky
07-08-2009, 01:46
Искать окно с заголовком, в котором содержится заголовок сайта.

amel27
07-08-2009, 15:18
morgan1991, на базе примера из справки, только для IE:

- отслеживаем и сохраняем историю навигации;
- блокируем попытки выйти в форум;
- выход из скрипта при закрытии окна браузера.

; ObjEvent example

$oIE = ObjCreate("InternetExplorer.Application.1") ; Create Internet Explorer application
$SinkObject=ObjEvent($oIE,"IEEvent_","DWebBrowserEvents2") ; Assign events to UDFs starting with IEEvent_
$oMyError = ObjEvent("AutoIt.Error","MyErrFunc") ; Initialize a COM error handler

; Do some browsing activities
$oIE.Visible=1
$oIE.RegisterAsDropTarget = 1
$oIE.RegisterAsBrowser = 1
$oIE.Navigate( "http://www.AutoItScript.com/" )

While 1
Sleep(100)
WEnd

; Обработка события навигации
Func IEEvent_BeforeNavigate2 ($obj, $url)
Local $url_bk = "http://www.autoitscript.com/forum"

ConsoleWrite($url)
If StringRegExp($url, "^\Q"& $url_bk &"\E") Then
ConsoleWrite(" - BLOCKED!!!")
$obj.Stop
EndIf

ConsoleWrite(@CRLF)
Return $obj
EndFunc

; Обработка события закрытия окна браузера
Func IEEvent_OnQuit ()
Exit
EndFunc

; This is my custom defined error handler
Func MyErrFunc()

Msgbox(0,"AutoItCOM Test","We intercepted a COM Error !" & @CRLF & @CRLF & _
"err.description is: " & @TAB & $oMyError.description & @CRLF & _
"err.windescription:" & @TAB & $oMyError.windescription & @CRLF & _
"err.number is: " & @TAB & hex($oMyError.number,8) & @CRLF & _
"err.lastdllerror is: " & @TAB & $oMyError.lastdllerror & @CRLF & _
"err.scriptline is: " & @TAB & $oMyError.scriptline & @CRLF & _
"err.source is: " & @TAB & $oMyError.source & @CRLF & _
"err.helpfile is: " & @TAB & $oMyError.helpfile & @CRLF & _
"err.helpcontext is: " & @TAB & $oMyError.helpcontext _
)
Endfunc




© OSzone.net 2001-2012