Сканирование QR-кодов из изображения или камеры
Сканирование QR-кодов из изображения или камеры
Коротко об инструменте
QR-код на квитанции, афише или наклейке скрывает обычный текст — чаще всего ссылку, реквизиты платежа или строку Wi-Fi. Сканер достаёт её двумя способами: из готовой картинки (скриншот, фото) и с живого кадра задней камеры телефона. Распознаёт библиотека jsQR прямо на странице, изображение никуда не загружается. Главное — увидеть адрес до перехода: наклейки с чужими кодами поверх настоящих уводят людей на фишинговые сайты. Смотрите также: собрать свой QR-код с логотипом, раскодировать %20 в полученной ссылке, обрезать снимок до самого кода.
Именно для этого и нужен режим «Картинка». Сохраните изображение с кодом на компьютер или сделайте скриншот, нажмите «Выбрать файл» и укажите его — распознавание идёт по пикселям файла, камера не участвует. Способ выручает, когда код прислали в мессенджере и отсканировать его тем же телефоном, на экране которого он показан, невозможно.
Без разрешения браузер не отдаёт видеопоток ни одной странице — это требование самого браузера, а не наше. Кадры обрабатываются скриптом на странице и никуда не передаются, запись не ведётся. Разрешение действует до закрытия вкладки, а кнопка «Стоп» освобождает камеру раньше — индикатор рядом с объективом при этом гаснет.
Чаще всего мешают три вещи: блик от вспышки или лампы, слишком маленький код в кадре и обрезанный угол. Снимите код фронтально, чтобы он занимал большую часть кадра вместе с белыми полями по краям, и без наклона. Сильно повреждённые или заклеенные коды восстанавливаются только частично — избыточность QR позволяет потерять примерно до 30% площади, но не больше.
Нет, только QR-коды. Библиотека jsQR ищет три характерных квадрата-ориентира в углах, а у линейного штрихкода на упаковке и у Data Matrix с честного знака структура совсем другая. Для маркировки товаров и штрихкодов нужен отдельный декодер — здесь они не распознаются.
Никуда: файл читается локально через браузер, а кадры с камеры разбираются в памяти вкладки. Ни картинка, ни расшифрованная строка не отправляются на сервер и не сохраняются. Закройте вкладку — и содержимое поля «Результат» исчезнет; при следующем открытии страница будет пустой.
Это стандартный формат QR-кода для подключения к сети: S — имя сети SSID, T — тип шифрования (WPA, WEP или nopass для открытой сети), P — пароль, H — признак скрытой сети. Сканер показывает строку целиком, поэтому пароль от гостевого Wi-Fi можно просто прочитать глазами и ввести вручную на устройстве, которое сканировать код не умеет.
Лучше сначала прочитать её. Сканер намеренно показывает адрес текстом, а не переходит по нему: код на бумаге не даёт никакой возможности заранее увидеть домен. Насторожить должны сокращатели ссылок, домен, не совпадающий с названием организации, и адрес без HTTPS на странице, где просят ввести данные карты.
До: Фото наклейки, снятое телефоном (JPG)
После: http://parking-oplata-service.xyz/pay?id=88 — домен не совпадает с оператором парковки, оплачивать по такой ссылке не стоит
До: Скриншот карточки с кодом
После: WIFI:S:CafeGuest;T:WPA;P:latte2026;; — SSID CafeGuest, шифрование WPA, пароль latte2026
До: Фотография визитки
После: BEGIN:VCARD VERSION:3.0 FN:Анна Петрова TEL:+7 999 000-11-22 EMAIL:[email protected] END:VCARD
Оценка и фидбек помогают понять, что улучшать дальше.