Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   Нажатие кнопки или переход по ссылке с меняющимся параметром. (http://forum.oszone.net/showthread.php?t=145920)

ikif 22-07-2009 23:55 1175116

Нажатие кнопки или переход по ссылке с меняющимся параметром.
 
Имеется ссылка-картинка:
Код:

<a href='index.php?activate=8473957&group=1&k=849374>
<img src='images/b_eat.png'/>
</a>

На данный момент реализовано мною так :
Код:

$KodHtml=_IEDocReadHTML($oIE)
$pattern='(?s).*?8473957&amp;group=1&amp;k=(.*?)".*'
$Kri = StringRegExpReplace($KodHtml, $pattern, "\1")
_IENavigate ($oIE, "http://g1.botva.ru/index.php?activate=8473957&group=1&k='$Kri'")

k= ..... Рандомное число , меняющееся переодически.
То что мне не нравиться , то что при переходе по ссылке в строке адреса IE пишется ....1&k='$Kri' , а не числовое значение вместо $Kri и мне кажется , что не всегда срабатывает.
Как это вначале внести в ссылку, а затем перейти ?
И есть ли другое решение при помощи _IEImgClick ?

proxy 23-07-2009 00:07 1175129

Цитата:

Цитата ikif
И есть ли другое решение при помощи _IEImgClick ? »

пример:
Код:

Opt('MustDeclareVars',      1)
Opt('TrayIconDebug',        1)

#include <IE.au3>

HotKeySet('{ESC}', '_Pro_Exit'); ESC - закрыть скрипт

Local $oIE, $oForm, $oSubmit

$oIE
= _IECreate('http://testing.ru/test2.htm')
_IEImgClick($oIE, 'купить', 'alt')

Func _Pro_Exit()
    Exit
EndFunc


ikif 23-07-2009 00:59 1175170

Я наверно поменял код , пока вы отвечали мне.
Картинок b_eat.png на странице несколько.


И даже в том примере на который вы ответили :

HTML код:

<a class='buy' href='?a=shop&buy=1&k=54963'>
<img src="images/b_market_buy_p.png" alt="купить" onMouseOver="doImage(this,'b_market_buy')"/>
</a>

Картинок b_market_buy_p.png много и у всех alt="купить".

Попутно маленький вопросик : Opt('MustDeclareVars', 1) кроме обезательства , какой плюс у этого ?

proxy 23-07-2009 01:09 1175177

1. Если много очень одинаковых картинок, то по какому принципу их отсеивать, что бы найти нужную?
например мнее вообще не нужна картинка "купить" - я бы кликал на картинку "отдых на побережье тихого океана" )

- можно кликнуть на ссылку по индексу: _IELinkClickByIndex
вопрос только в том, сколько там ссылок

- можно переберать ссылки:_IELinkGetCollection

- можно переберать картинки: _IEImgGetCollection

- может быть там и формы есть? тогда может: _IEFormGetCollection / _IEFormElementGetCollection

2. необходимо приводить ВЕСь HTML код страницы, так понятней где и сколько каритнок / сылок и т.д.

3. с Opt('MustDeclareVars', 1) меньше левых переменных, имхо удобней - меньше мусора

4. не стоит плодить одинаковые темы


Время: 02:52.

Время: 02:52.
© OSzone.net 2001-