Pull to refresh

Comments 6

Спасибо за ваш вклад, хорошее дело делаете.
Не совсем понял из статьи, почему список поддерживаемых сайтов ограничен достаточно малым числом? Нельзя ли найти общее решение типа


  1. Распарсить контент, как это делают много других утилит для "distraction free mode"
  2. Отправить основной контент в говорилку
Я так понимаю, что контент на странице берется через какой-то родительский элемент с определенным id или классом, откуда вытаскиваются параграфы, цитаты и т.д.?
Если так — то по сути, чтобы добавить сайт в ваш список, необходимо лишь как-то обозначить родительский элемент. Тогда почему сайтов так мало и какого рода ошибки возникают при парсинге страницы?
Да, в страницу встраивается JS скрипт, который вытаскивает данные по определенным id\именам класса. Ошибки могут быть разные, например, некоторые сайты могут использовать одинаковые имена классов как на главной странице так и в самой статье в результате чего на главной странице сайта будет срабатывать расширение и пытаться что-то там озвучить и отрабатывать не правильно. Приходится добавлять вручную разные условия для точного определения тела статьи и т.д.
Кстати, если кому интересно повесить «говорилку» на свой сайт, то можно использовать HTML5 Speech Synthesis API. Вполне юзабельно. Правда, есть известный глюк, но его можно легко обойти. Вот тут демка и подробности, если что.
Я всё понимаю, но зачем ваше расширение на «поддерживаемых сайтах» включает режим анти-отладки?
Я уже было подумал сперва что это разработчики meduza.io так извращаются, вставив anti-debug код, который всё-равно отключается нажатием ctrl+F8 (disable breakpoints), а это оказывается ваше расширение занимается вредительством.
habrastorage.org/webt/0w/2f/p9/0w2fp9uw8wpujs0yzdqk95kopry.png
конкретно вот этот js
listenit-eur1.firebaseapp.com/u/meduza.io.js

Извините за неудобства, в ближайшем времени исправлю
Sign up to leave a comment.

Articles