Всем привет.
Пробую писать шаблон по фейсбук.
Столкнулся с такой проблемой. Мне нужно нажать кнопку "Нравится" в нужном посте. Но проблема в том, что на странице кнопки "Нравятся" есть не только у постов, но и у не нужных комментарицев сбоку и т.д. Кто работал с ФБ, тот понимает о чем речь.
Есть два элемента на странице:
<a aria-pressed="false" class="UFILikeLink _4x9- _4x9_ _48-k" data-testid="fb-ufi-likelink" href="#" role="button" tabindex="0">Нравится</a> //////////// это нужная мне кнопка "Нравится"
<a class="_48-k UFILikeLink" data-testid="fb-ufi-likelink" href="#" role="button" aria-label="Поставить «Нравится»" aria-live="polite" aria-pressed="false" data-ft="{"tn":">"}">Нравится</a> //////// это та кнопка "Нравится", которую мне нужно проигнорировать.
Почитал вот эту статью - http://zennolab.com/discussion/threads/pravilnyj-poisk-ehlementov-na-stranice-i-rabota-s-nimi-osnovy-i-xitrosti-dolzhen-znat-kazhdyj.23622/
Отлично все рассказано. Понимаю, что мне нужно создать группу условий при которой ненужные кнопки будут отсеиваться. Но в этой статье не рассмотрен вариант, когда есть дополнительные атрибуты, по которым можно отсеять.
Т.е. что я имею виду: В приведенном выше примере, видно, что в ненужных мне кнопках есть такие атрибуты как "aria-live", "aria-label". Таких атрибутов у первого варианта нет. Логично что хотелось бы отсеивать по их наличию. Но как это сделать я не понимаю.
Пробовал писать условие как arial-label -> notext -> Поставить «Нравится». Но кубик просто выдает ошибку. Что наверно и логично, так как этот атрибут есть не у всех кнопок.
Собственно вопрос: как писать условия, в которых говорилось бы, мол "Берем кнопки у которых нет атрибута "arial-label""
Еще вопрос в догонку:
Допустим нам надо нажать кнопку номер 3 по номеру совпадения. У нас есть кубик события нажатия, в котором сделана группа условий (т.е. не одно условие, а например 5). Нужно номер совпадения прописывать у каждого условия, или только у первого например.
Этот вопрос, конечно и сам могу потестить. Но мало ли, сходу ответите.
Благодарю.
Пробую писать шаблон по фейсбук.
Столкнулся с такой проблемой. Мне нужно нажать кнопку "Нравится" в нужном посте. Но проблема в том, что на странице кнопки "Нравятся" есть не только у постов, но и у не нужных комментарицев сбоку и т.д. Кто работал с ФБ, тот понимает о чем речь.
Есть два элемента на странице:
<a aria-pressed="false" class="UFILikeLink _4x9- _4x9_ _48-k" data-testid="fb-ufi-likelink" href="#" role="button" tabindex="0">Нравится</a> //////////// это нужная мне кнопка "Нравится"
<a class="_48-k UFILikeLink" data-testid="fb-ufi-likelink" href="#" role="button" aria-label="Поставить «Нравится»" aria-live="polite" aria-pressed="false" data-ft="{"tn":">"}">Нравится</a> //////// это та кнопка "Нравится", которую мне нужно проигнорировать.
Почитал вот эту статью - http://zennolab.com/discussion/threads/pravilnyj-poisk-ehlementov-na-stranice-i-rabota-s-nimi-osnovy-i-xitrosti-dolzhen-znat-kazhdyj.23622/
Отлично все рассказано. Понимаю, что мне нужно создать группу условий при которой ненужные кнопки будут отсеиваться. Но в этой статье не рассмотрен вариант, когда есть дополнительные атрибуты, по которым можно отсеять.
Т.е. что я имею виду: В приведенном выше примере, видно, что в ненужных мне кнопках есть такие атрибуты как "aria-live", "aria-label". Таких атрибутов у первого варианта нет. Логично что хотелось бы отсеивать по их наличию. Но как это сделать я не понимаю.
Пробовал писать условие как arial-label -> notext -> Поставить «Нравится». Но кубик просто выдает ошибку. Что наверно и логично, так как этот атрибут есть не у всех кнопок.
Собственно вопрос: как писать условия, в которых говорилось бы, мол "Берем кнопки у которых нет атрибута "arial-label""
Еще вопрос в догонку:
Допустим нам надо нажать кнопку номер 3 по номеру совпадения. У нас есть кубик события нажатия, в котором сделана группа условий (т.е. не одно условие, а например 5). Нужно номер совпадения прописывать у каждого условия, или только у первого например.
Этот вопрос, конечно и сам могу потестить. Но мало ли, сходу ответите.
Благодарю.