Войти

Показать полную графическую версию : Нажатие кнопки или переход по ссылке с меняющимся параметром.


ikif
22-07-2009, 23:55
Имеется ссылка-картинка:

<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
И есть ли другое решение при помощи _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
Я наверно поменял код , пока вы отвечали мне.
Картинок b_eat.png на странице несколько.


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


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

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

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

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

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

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

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

4. не стоит плодить одинаковые темы (http://forum.oszone.net/thread-145833.html)




© OSzone.net 2001-2012