Как реализовать клик в диве, где есть определенный текст

mikhailt1

Новичок
Регистрация
08.05.2014
Сообщения
2
Благодарностей
0
Баллы
1
Добрый день! Помогите пожалуйста в решении проблемы, самому не получается решить.

Как реализовать следующее: нужно, чтобы был клик именно в диве, где есть определенный текст. К примеру на странице есть сетка дивов:
HTML:
<div class="media-item">
    <div id="_dea1907b2d3e">
    <div class="media-item-info">
       <div class="media-item-nmenu">
        <div id="medium-menu-loading__dea1907b2d3e" class="medium-external">
           <ul class="media-menu2">
            <li class="menu-item basket basket-login">
               <a href="#" id="_a192abf54363">
                <span>
                   <img src="./files/icons/basket.png" alt="Basket" title="Basket">
                </span>
               </a>
            </li>
           </ul>
        </div>
       </div>
       <div class="media-item-medianumber"> 18497104 </div>
    </div>
    </div>
</div>


2.
<div class="media-item">
    <div id="_dsadsadas12e">
    <div class="media-item-info">
       <div class="media-item-nmenu">
        <div id="medium-menu-loading__dsadsadas12e" class="medium-external">
           <ul class="media-menu2">
            <li class="menu-item basket basket-login">
               <a href="#" id="_v123da35f">
                <span>
                   <img src="./files/icons/basket.png" alt="Basket" title="Basket">
                </span>
               </a>
            </li>
           </ul>
        </div>
       </div>
       <div class="media-item-medianumber"> 181112121 </div>
    </div>
    </div>
</div>
Номер, по которому нужно, чтобы бралось где кликать находится в этом диве
HTML:
<div class="media-item-medianumber"> 18497104(нужный номер) </div>
Если что, номера берутся из переменной {-Variable.in1-}. И клик идет по картинке
HTML:
<a href="#" id="_v123da35f">
               <span>
                   <img src="./files/icons/basket.png" alt="Basket" title="Basket">
               </span>
               </a>
Вот свойство клика:

Я пытался сделать это самостоятельно, т.к. на заказывание шаблонов у меня не хватает финансов, но не вышло. Прошу помощи у разбирающихся людей!
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 708
Баллы
113
А если кликнуть по диву, сработает клик по ссылке? Если да, то
искать по тегу div, атрибут innertext, тип поиска regex, значение - ваша переменная с данными. номер совпадения end скорее всего будет.
 
  • Спасибо
Реакции: mikhailt1

mikhailt1

Новичок
Регистрация
08.05.2014
Сообщения
2
Благодарностей
0
Баллы
1
А если кликнуть по диву, сработает клик по ссылке? Если да, то
искать по тегу div, атрибут innertext, тип поиска regex, значение - ваша переменная с данными. номер совпадения end скорее всего будет.
В смысле ссылка должна находится в диве определенном? Этого хотелось бы, но к сожалению нет:( Срабатывает только по клику на img
HTML:
<a href="#" id="_v123da35f">
               <span>
                   <img src="./files/icons/basket.png" alt="Basket" title="Basket">
               </span>
               </a>
ибо в диве выводятся рандомные значение, мне это не подходит. Может на зенке как-то можно реализовать, чтобы кликалась первая ссылка до определенного дива?
вот тут немножко объяснения. мусор - это рандом, который генерируется сайтом, то есть неконтролируемый и не нужный. а вот текст в диве
<div class="media-item-medianumber"> 181112121 </div> (в этом случае 181112121 берется из файла)
HTML:
<div class="media-item">
    <div id="_dsadsadas12e"> // значение дива id всегда рандомное, мусор.(в этом случае _dsadsadas12e)
    <div class="media-item-info">
       <div class="media-item-nmenu">
        <div id="medium-menu-loading__dsadsadas12e" class="medium-external"> //значение дива id всегда рандомное, мусор. В этом случае  это medium-menu-loading__dsadsadas12e
           <ul class="media-menu2">
            <li class="menu-item basket basket-login">
               <a href="#" id="_v123da35f"> //ссылка, на которую нужно кликать, кликается по img src basket.png. id ссылки(в этом случае _v123da35f) не контроллируется и всегда рандомный. Рандомный не всмысле из моего файла, а неконтроллируемый рандом из сайта, мусор короче.
                <span>
                   <img src="./files/icons/basket.png" alt="Basket" title="Basket">
                </span>
               </a>
            </li>
           </ul>
        </div>
       </div>
       <div class="media-item-medianumber"> 181112121 </div>  // Див, по которому должен быть клик, значение дива(в этом случае текст 181112121 берется из файла, переменная {-Variable.in1-}
    </div>
    </div>
</div>

Я конечно плох в написании кода, но по моим мыслям хотелось бы вот это:
P.S. звездочка у меня рандом
HTML:
1.Search div on page. Div search name='<div class="media-item">'.
2. Click на ссылку <a href="#" id="*">
                <span>
                   <img src="./files/icons/basket.png" alt="Basket" title="Basket">
                </span>
               </a>
if ссылка <a href="#" id="*">
                <span>
                   <img src="./files/icons/basket.png" alt="Basket" title="Basket">
                </span>
               </a> содержится in div >>>
             
               <div class="media-item">
    <div id="_*">
    <div class="media-item-info">
       <div class="media-item-nmenu">
        <div id="medium-menu-loading__*" class="medium-external">
           <ul class="media-menu2">
            <li class="menu-item basket basket-login">
               <a href="#" id="*">
                <span>
                   <img src="./files/icons/basket.png" alt="Basket" title="Basket">
                </span>
               </a>
            </li>
           </ul>
        </div>
       </div>
       <div class="media-item-medianumber">{-Variable.in1-}</div>
    </div>
    </div>
</div>
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 708
Баллы
113
Регуляркой просто спарсить можно кусок кода:
(?<=<a\ href="\#"\ id=")[\w\W]*?{-Variable.in1-}
И из полученного уже выпарсить id ссылки a такой регуляркой
.*?(?=")
И кликать уже по этой ссылке, используя переменную полученную в качестве значения id ссылки в конструкторе действий.
 
  • Спасибо
Реакции: zennoX

Tuw

Client
Регистрация
07.09.2014
Сообщения
441
Благодарностей
150
Баллы
43
Регуляркой просто спарсить можно кусок кода:
(?<=<a\ href="\#"\ id=")[\w\W]*?{-Variable.in1-}
И из полученного уже выпарсить id ссылки a такой регуляркой
.*?(?=")
И кликать уже по этой ссылке, используя переменную полученную в качестве значения id ссылки в конструкторе действий.
По началу я не понимал этого, благо сейчас уже разибраюсь немножко) Только вот у меня ступор:
Я спарсил нужный кусок дива в переменную. Но тут вопрос, как выпарсить id ссылки из спарсенного дива и как клинуть по ссылке если там http нету, там img?) вот спарсенный див.
Код:
<div class="media-item-actionmenu">
          

  
    <ul class="media-actionmenu">
                                                <li class="actionmenu-item lightbox lightbox-active">
                    <a id="_75e7de55e5ed" href="#" rel="nofollow"><span><img src="./icons/icon-lightbox.png" alt="Leuchtkasten" title="Leuchtkasten"></span></a>                </li>
                                                            <li class="actionmenu-item preview">
                    <a id="_5ba5b5f3ba0b" href="/id/90094918"><span><img src="./icons/icon-view.png" alt="Vorschau öffnen" title="Vorschau öffnen"></span></a>                </li>
                                                            <li class="actionmenu-item basket">
                    <a id="_9a7c1a5cd7b2" href="#" rel="nofollow"><span><img src="./icons/icon-basket.png" alt="target" title="target"></span></a>                </li>
                        </ul>
        </div>
Тут в этой спарсенной переменной мне нужно кликнуть на это <img src="./icons/icon-basket.png" alt="target" title="target"> (находится на 11ой строчке)
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 708
Баллы
113
а просто a по innerhtml не ищет если не парсить div отдельно?
с таким значением icons/icon-basket.png
 

Tuw

Client
Регистрация
07.09.2014
Сообщения
441
Благодарностей
150
Баллы
43
а просто a по innerhtml не ищет если не парсить div отдельно?
с таким значением icons/icon-basket.png
Ищет, но загвоздка в том, что элементов icons/icon-basket.png бывает несколько штук на странице. Ладно бы, если бы нужный элемент icons/icon-basket.png был 3-им или 5-ым, но его номер всегда рандомный.
Еще есть мысль вырезать ненужные дивы и оставить нужный, такое возможно? Вырезать со страницы полностью <div class="media-item-actionmenu"></div>, который не содержит номер например 12345
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 708
Баллы
113
Ну тогда парсите из куска кода что выше id ссылки, не ее href
и по id уже кликаете
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)