Задать вопрос
@xidios

Как реализовать расширение, которое будет автоматически постить текст в дискуссии Steam?

5f6a271d296da949764299.png

Пересмотрел видосы со всеми возможными расширениями, задача мне кажется тривиальной, но решение у ней я придумать не могу, может кто тут помочь может.
Также предварительно нужно нажать на кнопку "Start a New Discussion"
Пример:
5f6a27d985e73918084605.png

Надеюсь мою мысль поняли. За любые советы, ссылки на материалы для изучения буду благодарен!
  • Вопрос задан
  • 55 просмотров
Подписаться 1 Сложный 4 комментария
Решения вопроса 1
@rPman
Устанавливаете расширение greasemonkey/tempermonkey или любой другой, позволяющий инжектить (запускать по условию) ваш скрипт на страницу, для отладки вы вообще можете в консоли браузера скрипт вставлять без расширений.

Затем скрипт ищет на странице поля ввода и кнопки примерно так $('#inputbox_id') и получаете/устанавливаете его содержимое .value или .text (для textbox), на кнопку нажимаете .click(), т.е. вся возня со скриптом у вас должна быть вокруг того чтобы не делать эти действия сразу друг за другом (это могут проверять для защиты от автоматизации в общем случае) а с интервалом и контроль над различными ошибками (например код формы изменился).

Иногда просто установить значение полей ввода не достаточно, нужно симулировать нажатия клавиатуры, в этом случае либо формируете события браузера с помощью keyboardEvent либо просто подсмотрите, какие методы вызываются на эти события и вызывайте их самостоятельно.

Чтобы узнать какие css селекторы у нужных вам полей, в браузере достаточно нажать правую кнопку мыши (иногда с shift) и выбрать inspect element, в открывшемся инструменте разработчика можно правой кнопкой мыши выбирать нужные элементы страницы и в контекстном меню выбирать copy/css selector или что вам угодно.

Управлять своим скриптом со стороны лучше по http/websocket на ваш сервер (вам придется поднимать https версию если вебсайт ее тоже использует)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы