Не могу поставить реакцию в ФБ

razrabot4ik

Новичок
Регистрация
29.04.2020
Сообщения
15
Реакции
0
Баллы
1
Всем привет. Столкнулся с проблемой в фб, для кого-то скорее всего не проблема. Для меня оказалось непосильно. Пытаюсь поставить реакции https://prnt.sc/w98764 вот эти. Они появляются когда наводишь на кнопку мышь. Навожу с помощью парсинга координатов и С# эмуляцией. По другому не решил вопрос. Но не могу найти как поставить эти реакции. В коде не могу их отследить от слова вовсе. Там Canva. По форуму не нашел ничего, или плохо искал. Ткните плиз в какую сторону смотреть, где эти элементы найти
 
даже посмотреть не могу. фб забанил мой аккаунт. мой единственный аккаунт. я даже не успел попользоваться им.
говорят фб только ботов банит, а вот и нифига, банит реальный аккаунт даже ни разу не засвеченный в зенке. совсем они там уже шизанулись, не могут отличить человека от бота что ли ? :)
 
Возможно, что эти элементы при наведении мыши с помощью JavaScript встраиваются на страницу, а когда Вы мышь убираете, то они пропадают. Попробуйте воспользоваться методом из этого сообщения для того, чтобы поймать элементы.
 
При чём здесь Canva?
А понял, канвас наверное.
Можете в обычном Хроме навести курсор на Нравится и затем, когда появятся реакции, нажать ПКМ и там выбрать "Показать код страницы". Затем искать блок этих реакций, устанавливать уникальный идентификатор и эмуляцией мыши наводить и кликать. Например div с innerhtml включающий строку ">Супер!<", если у вас RU интерфейс.
Update. Да, не работает. Будет время придется покопаться.
 
Последнее редактирование:
Возможно, что эти элементы при наведении мыши с помощью JavaScript встраиваются на страницу, а когда Вы мышь убираете, то они пропадают. Попробуйте воспользоваться методом из этого сообщения для того, чтобы поймать элементы.
Не разобрался. Тёмный лес
 
При чём здесь Canva?
А понял, канвас наверное.
Можете в обычном Хроме навести курсор на Нравится и затем, когда появятся реакции, нажать ПКМ и там выбрать "Показать код страницы". Затем искать блок этих реакций, устанавливать уникальный идентификатор и эмуляцией мыши наводить и кликать. Например div с innerhtml включающий строку ">Супер!<", если у вас RU интерфейс.
Update. Да, не работает. Будет время придется покопаться.
Пробовал уже. Бесполезно
 
даже посмотреть не могу. фб забанил мой аккаунт. мой единственный аккаунт. я даже не успел попользоваться им.
говорят фб только ботов банит, а вот и нифига, банит реальный аккаунт даже ни разу не засвеченный в зенке. совсем они там уже шизанулись, не могут отличить человека от бота что ли ? :-)
Это фб. Непредсказуемый
 
Аналогичная проблема. Прежде чем открыть список возможных реакций, нужно навестись на "ближайший" элемент, так как кнопок "Нравится" далеко не одна. Перепробовал возможные варианты, пока не смог решить.
 

Вложения

  • 2021-09-15_19-35-57.png
    2021-09-15_19-35-57.png
    358,7 KB · Просмотры: 227
Вы имеете ввиду это? Если да, то еще не пробовал, на днях тестану - напишу о результатах здесь

тоже мучался иногда с такими элементами, ваш вопрос подоткнул нагуглить решение

Вводим в консоль
setTimeout(function(){debugger;}, 5000)
тыкаем куда нужно чтобы вызвать исчезающий элемент
через пять секунд страница встанет на паузу, и ничего уже никуда не исчезнет
 
  • Спасибо
Реакции: nicanil
Думал что всё гуд, но не тут-то было.
Попытка кликнуть/тапнуть по например реакции сердца не удается. Попытка нажатия происходит, но безрезультатно.
Наводимся на элемент:
Развернуть Свернуть Копировать
HtmlElement he = instance.ActiveTab.FindElementByXPath("//span[text()='Нравится']", 0);
if (he.IsVoid) return -1;
instance.ActiveTab.FullEmulationMouseMoveAboveHtmlElement(he, 10);
Фризим страницу:
Развернуть Свернуть Копировать
setTimeout(function(){debugger;}, 500)

82996
 
Последнее редактирование:
С фризом
82999
 
Без фриза
83001
 
Думал что всё гуд, но не тут-то было.
Попытка кликнуть/тапнуть по например реакции сердца не удается. Попытка нажатия происходит, но безрезультатно.
Это для отладки. В данном случае для составления XPath путей у элементов, которые появляются только при наведении мыши.
Курсор Вы наводите, судя по всему, через FullEmulationMouse, попробуйте и клик так же делать (только без фриза). Или включить настройку "Максимальная эмуляция" в настройках проекта.
 
1:
Развернуть Свернуть Копировать
HtmlElement he = instance.ActiveTab.FindElementByXPath("//span[text()='Нравится']", 0);
if (he.IsVoid) return -1;
instance.ActiveTab.FullEmulationMouseMoveAboveHtmlElement(he, 15);
Thread.Sleep(1000);
2:
Развернуть Свернуть Копировать
HtmlElement he = instance.ActiveTab.FindElementByXPath("//div[@aria-label='Супер']", 0);
if (he.IsVoid) return -1;
instance.ActiveTab.FullEmulationMouseMoveAboveHtmlElement(he, 15);
Thread.Sleep(1000);
3:
Развернуть Свернуть Копировать
instance.ActiveTab.FullEmulationMouseClick("left", "click");
Это для отладки. В данном случае для составления XPath путей у элементов, которые появляются только при наведении мыши.
Курсор Вы наводите, судя по всему, через FullEmulationMouse, попробуйте и клик так же делать (только без фриза). Или включить настройку "Максимальная эмуляция" в настройках проекта.
Получилось, использовал 3 кубика C#, но я хз как их объеденить в один. Так будет приятнее.

Хотя с другой стороны, и так сойдет.
83002
 
Последнее редактирование:
Вот так должно работать (в одном кубике):
C#:
Развернуть Свернуть Копировать
HtmlElement hover_he = instance.ActiveTab.FindElementByXPath("//span[text()='Нравится']", 0);
if (hover_he.IsVoid) return -1;
instance.ActiveTab.FullEmulationMouseMoveAboveHtmlElement(hover_he, 15);
Thread.Sleep(1000);

HtmlElement click_he = instance.ActiveTab.FindElementByXPath("//div[@aria-label='Супер']", 0);
if (click_he.IsVoid) return -1;
instance.ActiveTab.FullEmulationMouseMoveAboveHtmlElement(click_he, 15);
Thread.Sleep(1000);

instance.ActiveTab.FullEmulationMouseClick("left", "click");
 
  • Спасибо
Реакции: ruthless
Вот так должно работать (в одном кубике):
C#:
Развернуть Свернуть Копировать
HtmlElement hover_he = instance.ActiveTab.FindElementByXPath("//span[text()='Нравится']", 0);
if (hover_he.IsVoid) return -1;
instance.ActiveTab.FullEmulationMouseMoveAboveHtmlElement(hover_he, 15);
Thread.Sleep(1000);

HtmlElement click_he = instance.ActiveTab.FindElementByXPath("//div[@aria-label='Супер']", 0);
if (click_he.IsVoid) return -1;
instance.ActiveTab.FullEmulationMouseMoveAboveHtmlElement(click_he, 15);
Thread.Sleep(1000);

instance.ActiveTab.FullEmulationMouseClick("left", "click");
Спасибо
 

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