Задать вопрос
Ответы пользователя по тегу Расширения для браузеров
  • Можно ли пропатчить платные расширения браузера?

    @rPman
    обычно все расширения складываются в профиль пользователя как есть в виде исходников (с оговорками про webpack и т.п.) ты можешь их копировать и редактировать... например в fiefox прямо в каталоге extensions лежат .xpi файлы, это zip архивы где все в виде исходников.

    Но если разработчик заморочился с загрузкой кода по сети или обфускацией, то реверсинженеринг может оказаться дороже оплаты а значит по простому не получится
    Ответ написан
    Комментировать
  • Можно ли скрыть расширение для конкретного сайта, чтобы расширение работало, но сайт не смог обнаружить что такое расширение используется на нем?

    @rPman
    Да, шансы есть, например обнаружить способ детектирования и переписать соответствующее место в расширении или 'сломать' метод детектирования, подменив функции на свои (тупой пример, можно подменить базовые методы работы с массивами или сторонам типа indexof и проверяя входные в него параметры, возвращать неправильный ответ)

    С другой стороны, если расширение что то меняет на странице, то это можно детектировать, а значит не скрыть.
    Ответ написан
    Комментировать
  • Какой есть переводчик чтоб можно было переводить выделяя текст на фото?

    @rPman
    Я соединял старейший ABBYY Screenshot Reader с гугл переводчиком, простой командой содержимое буфера (штатная утилита clip.exe) добавлял к translate.google.com, запуская этот скрипт по комбинации клавиш (т.е. запустил abbyy. выделил область, нажал на экране в его окне кнопку сохранения в буфер, нажал комбинацию клавиш -> получил перевод в браузере)

    Большая часть работы в твоей задаче - это распознавание текста, для русского языка доступных (даже и платных) продуктов не густо. Из бесплатных и открытых есть tesseract (на его основе делают бесплатные утилиты) но качество его распознавания очень низкое.
    Ответ написан
  • Как запретить настройку расширений в Chrome?

    @rPman
    Скачиваешь расширение .crx (это zip архив с файлами расширения) либо делаешь это напрямую в каталоге chromium/Default/Extensions/ocgpenflpmgnfapjedencafcfakcekcd/3.5.3_0/

    Просто напросто редактируешь файлы и убираешь все что связано с редактированием настроек.

    Код там без обфускации и минимизации, с комментариями, думаю справитесь, делов на несколько минут
    Ответ написан
    4 комментария
  • Как в linux-е получить полноценный flash-плеер, желательно в firefox?

    @rPman
    Попробуй https://ruffle.rs/ их эмулятор в браузере использует web archive в попытке запускать сохраненный архив флеш-наследия 200x-ых
    Ответ написан
    Комментировать
  • Как сделать WebSocket (точнее wss) сниффер?

    @rPman
    html приложение - значит браузер.

    Для начала developer console по f12, вкладка networks, мониторит любую сетевую активность веб приложения и позволяет сохранить весь сеанс и весь трафик в .har файл (у него json формат), в подавляющем большинстве случаев этого достаточно для проведения анализа. Иногда хватает просто посмотреть активность в этой вкладке чтобы разобраться.

    Так же, ты можешь написать плагин/использовать готовый типа tempermonkey или просто инжектить свой код через браузерную консоль, который будет подменять класс websocket и методы его работы на свои, добавив любую логику, выглядит это примерно так

    var ws_send=Websocket.send;
    Websocket.send=function(data){console.log(data);return ws_send(data);}
    Ответ написан
  • Разделение пространств/рабочих областей в браузере. Как настроить?

    @rPman
    Исчезновение открытых табов это особенность браузеров, такое я встречаю и у firefox (очень редко), чаще всего это связано с "неправильным" закрытием браузера, если оно совпадет, как я понима, с каким-то очередным обновлением, требующим что то подправить в настройках.

    Т.е. проблема у тебя больше не организационная (ведь тебе бы подошли опробованные тобой решения) а техническая - нужно автоматически сохранять список открытых табов чтобы можно было их вернуть

    Попробуй "tab session manager" и погугли аналогичные решения.

    Сам я этим не пользуюсь потому что понял что вместо попытки бороться с багами нужно немного изменить стратегию работы с табами и чаще пользоваться букмарками. Одно время я активно настраивал окно с быстрым доступом к сайтам (стартовое окно, открывается при новом табе, в гугл хроме не кастомизируется штатно, хотя есть расширения)
    Ответ написан
    Комментировать
  • Почему расширения работают не во всех вкладках?

    @rPman
    Pdf это фактически картинка, существует возможность размещать текст в файле но не все этим пользуются

    Ну и pdf в браузере или к примеру офисные документы, это не dom страница, расширения не могли бы с такими работать
    Ответ написан
    5 комментариев
  • Как убрать пустоты в видео?

    @rPman
    такого расширения для браузера я не видел и не уверен что кому то надо
    с точки зрения обработки видео чем то типа ffmpeg можно написать простенький скрипт, который первым проходом найдет на видео тишину (если фоном музыка, то придется для поиска речи хотя бы разложением фурье звук разбирать) а вторым проходом нарежет его на куски и соберет обратно

    советую включать 2x скорость проигрывания (или подбирай скорость по ситуации) - помогает

    p.s.
    извините не удержался
    Ответ написан
    1 комментарий
  • С помощью какого расширения для Google Chrome можно кликнуть сразу по нескольким кнопкам, чтобы отобразить спрятанное содержимое?

    @rPman
    сам делаешь javascript, запускаешь его в консоли или автоматически с помощью например tempermonkey

    скрипт для нажатия на элемент на странице очень простой:
    document.querySelector('css-селектор').click();
    чтобы узнать css селектор можно в консоли браузера на нужном элементе (чтобы открыть можно нажать правую кнопку на элементе и выбрать - инспектировать) и в меню выбрать копировать - css
    Ответ написан
    Комментировать
  • Как называется расширение для браузера которое позволяет сохранять собственные CSS стили на сайтах?

    @rPman
    stylish и каталог со стилями userstyles.org

    к сожалению недавно ее разработчик (скорее всего продал другому владельцу) соскамился, добавив в расширение сбор персональной информации о пользователях

    Очень грустно, что скорее всего такая судьба ждет любое популярное и хорошее расширение, ибо поддерживать за бесплатно сложно а тут тебе приносят на блюдечке деньги, нужно только немножко гадости другим сделать.
    Ответ написан
  • Возможно ли использовать антикапчу для браузера, не поддерживающего расширения?

    @rPman
    запилить свою на основе autoit, это скриптовый язык с фреймворком и компилятором для автоматизации действий.

    делаешь скриншот определенной области экрана, делаешь запрос на распознование капчи, вставляешь текст в нужное место (кликаешь мышкой в нужное место на экране)

    если браузер создает системные контролы (inputbox, что маловероятно) то эти элементы можно будет отслеживать и получать их координаты, иначе только распознованием текста с экрана (вплоть буквально до getpixel)
    Ответ написан
    2 комментария
  • Как хранить зашифрованные данные в плагине?

    @rPman
    Да, если этот ключ - ключ шифрования, которым будет зашифрована вся критичная информация, которая хранится в браузере расширением.

    Но нужно быть осторожным, все что работает в браузере в момент введения ключа пользователем должно быть доверенным и не содержать злонамеренного кода, а это веб сервер и все загружаемые скрипты, на страницах которого будет активироваться интерфейс плагина (если интерфейс - отдельное окно то уже не так критично) а так же сторонние расширения.

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

    Расшифрованные данные и сам ключ шифрования не должны никуда записываться и должны храниться только в оперативной памяти.
    Ответ написан
    Комментировать
  • Заполнение и отправка формы в точно указанное время, можно ли?

    @rPman
    Скрипт будет зависеть от верстки сайта, и будут меняться при ее изменении. Браузеры имеют вместе с консолью разработчика отличный инспектор, если нажать правую кнопку мыши на желаемом элементе на форме (если возможность заблокирована, то нужно жать shift+правая кнопка мыши) и выбрать Inspect/Посмотреть код, а затем уже в открывшемся инспекторе выделить нужный элемент (input например) и в меню выбрать Copy -> CSS selector, то полученную строку можно напрямую скормить $('строка css selector') и получить нужный элемент, у которого можно править .value=xxx или нажимать .click(). Могут возникнуть сложности с кастомными select или там где форма отслеживает нажатия на клавиатуре,..

    В борьбе с блокировщиками рекламы и автоматизаторами некоторые веб разработчики научились создавать такую верстку, что в ней сложно определить простые правила css selector, так как они будут меняться (но не невозможно, например с помощью getBoundingClientRect() к каждому элементу на странице можно определить его координаты (и видимый ли он) и уже по координатам идентифицировать нужный (блокировщики пока не умеют его использовать но автоматизаторам уже не проблема), так же можно поглядывать на текстовое содержимое, например выделяя подписи к элементам формы.

    Еще проблема - тайминги. Момент времени можно подобрать с помощью setTimeout, например переставляя его ежесекундно можно постоянно пересчитывать интервал (смотреть текущее время, целевое время и время установки предыдущего интервала, вычислять ошибку в миллисекундах, которую вносит браузер), чтобы в момент икс последний setTimeout выполнился точно в срок. Еще важно, время на сервере может отличаться от времени на клиенте, точное можно попытаться определить из заголовков запросов к серверу XMLHttpRequest.getResponseHeader() к не статичным файлам, но это конечно не дает гарантии. Плюс можно попытаться вычислить ту половину пинга, которое сетевой пакет тратит чтобы перейти от клиента к серверу, плюс поправка на скорость работы самого браузера (экспериментами, в т.ч. с теми же запросами, на которых время на сервере определяешь). Так же можно проанализировать как отвечает сервер в момент нагрузки.

    Работа творческая, и без возможности провести управляемый и повторяемый эксперимент, почти обречена на провал (точнее твой автоматизатор ничем не будет выделяться по сравнению с другими)

    p.s. а потом осознать, к примеру, что декларируемые и фактические правила получения скидки у владельца сервиса - отличаются.
    Ответ написан
    Комментировать
  • Как совершить AJAX запрос через прокси?

    @rPman
    Я так понимаю хотите чтобы с пользовательской стороны шли подключения да еще и через прокси, это что за изощренный метод сокрытия деятельности?

    Теоретически это возможно, так как http прокси это вебсервер к которому нужно делать запрос с указанием нужного адреса в заголовках, копайте в сторону XHTTPRequest
    Ответ написан
  • Как прописать запрет замораживать вкладки в расширении для Google Chrome?

    @rPman
    Так как у вас боты, выбросьте готовые тяжелые браузеры и напишите свой на базе вебкит, это 10-15 строчек плюс пара на запуск вашего бота. В своем приложении вы можете создавать сколько угодно одновременно работающих фреймов, мультитредово, любых размеров и т.п.

    Недостаток - чистый вебкит и хромиум (с поддержкой гугла, точно помню они принципиально отказывались комитить gpu код ускорения проигрывания видео в него) - тормоза с проигрыванием видео (потому что декодирование на чистом cpu), но не думаю что боты у вас смотрят его из браузера.

    p.s. в .net от майкрософта компонента WebBrowser работает на базе Internet Explorer, тоже без проблем, на mono оно работает на базе mozilla firefox
    Ответ написан
    6 комментариев
  • Как реализовать отношение многие ко многим в хранилище расширения браузера?

    @rPman
    key-value это обычно документ-ориентированный подход, т.е. когда вся необходимая информация хранится в виде объекта.

    В вашем случае это будет
    comment_1:{data:comment_data,tags:[tag_1,tag_2,tag_3]}

    справочники храните как отдельные объекты
    tag_1:tag_data

    И не заводите прослойку из id, это лишнее,.. точнее старайтесь чтобы идентификатором была сама строка (если она уникальная) тогда вам не придется городить целый уровень абстракций.

    Да, в документ-ориентированных базах сложнее контролировать целостность, самим надо заниматься индексами и прочее.. такова селяви
    Ответ написан
    2 комментария
  • Как повысить приоритет браузерного расширения по сравнению с другими расширениями?

    @rPman
    Проведя несколько простых экспериментов, попробуйте определить, как именно браузер сортирует расширения. Это может быть порядок установки, по дате обновления или имени, или идентификатору или еще по какому признаку. Выяснив это вы легко сможете создать расширение, которое с большой вероятностью будет первым (а в вашем контролируемом окружении - с гарантией).
    Ответ написан
    Комментировать
  • Как настроить стороннее расширение, чтобы оно работало на всех сайтах, кроме выбранных мною?

    @rPman
    Первый же ответ из гугла, для google chrome - https://www.ghacks.net/2012/08/20/enable-or-disabl...

    Для firefox попробуйте что то типа Firefox Multi-Account Containers, сам не прбовал но читал что такие есть работающие как этот или по тому же принципу, отпишитесь если у вас получится.
    Ответ написан
    2 комментария
  • Как сделать, чтобы на стороннем сайте отображалась другая информация на конкретном компьютере?

    @rPman
    Если вам нужны изменения на странице:
    Если у вас есть доступ к этому компьютеру, то можно установить расширение в браузере, которое будет подменять содержимое страницы. Тот же Greasemonkey/Tampermonkey, это пользовательские скрипты в браузере, запускаемые по условию (например страницы/домен) а из них делайте что хотите.

    Если вам нужны значительные изменения (фактически другой вебсайт):
    то как уже тут описывали, вам необходимо подменить dns запись в вашем dns сервере или по простому поправить файл hosts (в windows это тут C:\Windows\System32\drivers\etc\ ) указав на свой ip адрес этого сервера, где запускаете свою подделку.
    Так же можно поднять свой прокси сервер, прописать его в настройках браузера и уже в нем производить подмену.
    В этом случае https работать не будет, точнее будет выскакивать предупреждение о не доверенном сертификате, но при наличии доступа к компьютеру это можно частично исправить, добавив свой сертификат в браузер (для банковских вебсерверов используется более сложный сертификат, когда информация о компании зеленым цветом отображается прямо слева от ссылки, это подделать не получится), простые сертификаты просто помечают зеленым значком без наименования компании.
    Ответ написан
    6 комментариев