Что нового

Кликнуть не по первой ссылке, если известен только её "text"

Yur

Новичок
Сообщения
2
Репутация
0
(использую FF.au3)

Есть ссылка такого вида:
Код:
<span class="selection-link
normal 
"
  data-selection-price="1.34"
  data-selection-key="3607582@Set_{0}__game_{1}10.RG_H"
>1.34</span>

Я знаю только что надо нажать на "1.34". Кликать то кликаю, но иногда выше на странице бывают ссылки с таким же текстом. Ну и тыкается, конечно, на первую попавшуюся.

Я тут вижу два три пути решения:
1. Вычислять data-selection-key (но это тяжко). Тогда, подскажите пожалуйста, какой $sMode для _FFLinkClick выбирать чтобы работало?
2. Кликать после определённого текста на странице. Например, я точно знаю что нужная мне ссылка идёт после уникального сочетания "(current)". Как можно это сделать?
3. После клика вылазит окошко. Из него я могу считать текст и понять туда или не туда мы попали. Если не туда, то надо будет кликнуть на следующую ссылку с тем же текстом. Собственно, тогда вопрос будет такой - как кликнуть на вторую по счёту ссылку с заданным текстом?

Код:
<div class="name-field" data-ellipsis='{}'> To Win Match With Handicap By Sets </div>
  </div>
 <table class="td-border table-layout-fixed ">
 
  <tr>
   <th class=""><div data-ellipsis='{}'>Wang, Qiang</div></th>
 <th class=""><div data-ellipsis='{}'>Kumkhum, Luksika</div></th>
 </tr>
 <tr>
 
  <td  class="price " data-coeff-uuid="2018001830-8329874013" data-sel='{"sn":"Wang, Qiang (-1.5)","mn":"To Win Match With Handicap By Sets","ewc":"1/1 1","cid":8329874013,"prt":"CP","ewf":"1.0","epr":"1.2222222222222223","prices":{"0":"2/9","1":"1.222","2":"-450","3":"0.222","4":"0.222","5":"-4.50"}}'
  >
 <div class=" coeff-link-2way
 ">
<div class="coeff-handicap">
 (-1.5)
 </div>
<div class="coeff-price">
  <span class="selection-link
normal 
"
  data-selection-price="1.22222"
  data-selection-key="3607582@To_Win_Match_With_Handicap_By_Sets.HB_H"
>1.222</span>
 </div>
</div>
 </td>
   <td  class="price " data-coeff-uuid="2018001823-8329874012" data-sel='{"sn":"Kumkhum, Luksika (+1.5)","mn":"To Win Match With Handicap By Sets","ewc":"1/1 1","cid":8329874012,"prt":"CP","ewf":"1.0","epr":"4.25","prices":{"0":"13/4","1":"4.25","2":"+325","3":"3.25","4":"-0.308","5":"3.25"}}'
  >
 <div class=" coeff-link-2way
 ">
<div class="coeff-handicap">
 (+1.5)
 </div>
<div class="coeff-price">
  <span class="selection-link
normal 
"
  data-selection-price="4.25"
  data-selection-key="3607582@To_Win_Match_With_Handicap_By_Sets.HB_A"
>4.25</span>
 </div>
</div>
 </td>
  </tr>
  </table>


....
Дальше много подобных разделов, а потом нужный мне:


<div class="name-field" data-ellipsis='{}'> To Win Game, 2nd Set </div>
  </div>
 <table class="td-border table-layout-fixed ">
 
  <tr>
  <th class="width20">
<div  data-ellipsis='{}'>    <span class="result-description-part"> </span>
   </div>
 </th>
   <th class="width40"><div data-ellipsis='{}'>Wang, Qiang</div></th>
 <th class="width40"><div data-ellipsis='{}'>Kumkhum, Luksika</div></th>
 </tr>
 <tr>
  <td data-header-highlighted = "header-highlighted" data-ellipsis='{}' nowrap = "nowrap" 
 class=" text-align-left  width20">
 <span class=market-table-name>Game <b>1</b></span>
  <span>(current)</span>  <span class="result-description-part"> <span
class="red">(<img class="sport-icon-image" src="
 https://web.mbstatic.org/008AE5/3-0-405-93/images/tennis.png
"/>0:0)</span></span> </td>
 
  <td  class="price width40" data-coeff-uuid="-1618243641-8329873321" data-sel='{"sn":"Wang, Qiang To Win","mn":"Set 2, game 1","ewc":"1/1 1","cid":8329873321,"prt":"CP","ewf":"1.0","epr":"1.34","prices":{"0":"17/50","1":"1.34","2":"-294","3":"0.34","4":"0.34","5":"-2.94"}}'
  >
 <div class=" coeff-icon
 ">
<div class="coeff-handicap">
  </div>
<div class="coeff-price">
  <span class="selection-link
normal 
"
  data-selection-price="1.34"
  data-selection-key="3607582@Set_{0}__game_{1}10.RG_H"
>1.34</span>
 </div>
</div>
 </td>
   <td  class="price width40" data-coeff-uuid="-1618243648-8329873327" data-sel='{"sn":"Kumkhum, Luksika To Win","mn":"Set 2, game 1","ewc":"1/1 1","cid":8329873327,"prt":"CP","ewf":"1.0","epr":"3.3","prices":{"0":"23/10","1":"3.30","2":"+230","3":"2.30","4":"-0.435","5":"2.30"}}'
  >
 <div class=" coeff-icon
 ">
<div class="coeff-handicap">
  </div>
<div class="coeff-price">
  <span class="selection-link
normal 
"
  data-selection-price="3.3"
  data-selection-key="3607582@Set_{0}__game_{1}10.RG_A"
>3.30</span>
 </div>
</div>
 </td>
  </tr>

- Порядковый номер ссылки постоянно меняется, так что к нему не привяжешься.
 
Автор
Y

Yur

Новичок
Сообщения
2
Репутация
0
Решилось с использованием _FFXPath.

1. Устанавливаем расширение firebug, с его помощью узнаём XPath нужного элемента. (ну или как-то по другому, не знаю)

2. _FFClick (_FFXpath (".//*[@id='block4063321type111']/div[4]/div[1]/table/tbody/tr[2]/td[2]/div/div[2]/span"))

"type111" - уникальный идентификатор нужного мне раздела.

Спасибо за внимание ;D
 
Верх